node.js - Erro: ENOENT: nenhum arquivo ou diretório, scandir Kubernetes Pod
Estou tentando enviar arquivos com multer do meu aplicativo typescript/express. Testei a aplicação localmente no Mac e ela está funcionando bem com uma pasta uploads dentro de src. Funcionou bem também para o contêiner local do Docker sem nenhum problema. Mas, uma vez que eu a deployar no Kubernetes, os caminhos não estão funcionando. O plano é que, se a pasta uploads não existir, o aplicativo criará a pasta usando -
const storage = multer.diskStorage({
destination: function(req: Request, file: Express.Multer.File, callback: any) {
// const _baseUploadPath: string = path.join('./src', '..', 'abc_uploads');
const _baseUploadPath: string = path.join('../', 'uploads');
const _folderIdentifier: string | undefined = RequestTracker.requestId;
const _tmpPath: string = path.resolve(_baseUploadPath, `_tmp_${_folderIdentifier}`);
fs.existsSync(_baseUploadPath) || fs.mkdirSync(_baseUploadPath);
fs.existsSync(_tmpPath) || fs.mkdirSync(_tmpPath);
callback(null, _tmpPath);
},
filename: function(req: Request, file: Express.Multer.File, callback: any) {
callback(null, file.originalname.substring(0, file.originalname.indexOf(".")) + path.extname(file.originalname));
return;
}
});
Agora, estou recebendo o erro - Error: ENOENT: no such file or directory, scandir.
Mesmo que a pasta esteja presente e eu esteja logado no terminal do pod e altere a permissão da pasta para 777, ainda assim as subpastas não estão sendo criadas.
Alguém pode ajudar, por favor.