I'm trying to create hidden dot folder on the same level as public to serve static files I generate every day.
var fs = Npm.require('fs');
Meteor.startup(function() {
var dir = './../../../../../.files';
if (!fs.existsSync(dir)){
fs.mkdirSync(dir);
}
routePath = fs.realpathSync(dir);
})
Everything works on production but I got error during deploy : Invoking deployment process: FAILED
Logs showed I can't create this folder:
Error: EACCES, permission denied './../../../../../.files'
at Object.fs.mkdirSync (fs.js:654:18)
at Router.map.route.where (server/server_router.js:7:10)
at /opt/appname/app/programs/server/boot.js:249:5
error: Forever detected script exited with code: 7
error: Script restart attempt #14
Solved it using https://www.npmjs.com/package/mkdirp
var mkdirp = Meteor.npmRequire('mkdirp');
Meteor.startup(function() {
var dir = './../../../../../.folder';
mkdirp(dir, function (err) {
if (err) console.error(err)
else console.log('.folder created')
});
routePath = fs.realpathSync(dir);
})