upstart node.js can't save files, wrong permissions?
root 25150 1 0 11:26 ? 00:00:00 sudo node /home/myusername/sites/now-images-manager/app.js
root 25151 25150 0 11:26 ? 00:00:03 node /home/myusername/sites/now-images-manager/app.js
Here is my upstart script:
#!upstart
description "now-images-manager startup script"
author "me@me.com"
start on startup
stop on shutdown
script
export HOME="/root"
echo $ > /var/run/now-images-manager.pid
exec sudo node /home/myusername/sites/now-images-manager/app.js >> /home/myusername/sites/now-images-manager/now-images-manager.sys.log 2>&1
# exec sudo -u myusername /usr/bin/node /home/myusername/sites/now-images-manager/app.js >> /home/myusername/sites/now-images-manager/now-images-manager.sys.log 2>&1
end script
pre-start script
# Date format same as (new Date()).toISOString() for consistency
echo "[`date -u +%Y-%m-%dT%T.%3NZ`] (sys) Starting" >> /var/log/now-images-manager.sys.log
end script
pre-stop script
rm /var/run/now-images-manager.pid
echo "[`date -u +%Y-%m-%dT%T.%3NZ`] (sys) Stopping" >> /var/log/now-images-manager.sys.log
end script
Here is a sample from the log:
downloadFileFromURL { [Error: ENOENT, open 'public/images/tumblr_m9h1uh4KSi1qzl9k6o1_500.jpg']
errno: 34,
code: 'ENOENT',
path: 'public/images/tumblr_m9h1uh4KSi1qzl9k6o1_500.jpg' }
When I start the app with node app.js in the shell it works perfectly fine.
2 Replies
Thomas