I am using following steps to update code on server after login to server:
sudo -s
<wrote password here>
cd /var/www/staging
rm -r app.old
mv app app.old
svn checkout https://example.com/projectname/trunk/app app
Now I created update.sh file in /var/www/ with following content
cd /var/www/staging
rm -r app.old
mv app app.old
svn checkout https://example.com/projectname/trunk/app app
And I have following crontab entry to run after every 5 minutes:
*/5 * * * * /var/www/update.sh
Problem: So cron job is working but it is only deleting the app folder and not checking out it from svn repository. But when I run bash /var/www/update.sh manually it works fine after sudo -s.
How to fix this for cron job as well. Is it related to sudo -s or something else?
Thanks
I suspect the problem is that the job is running from cron as
rootand root user doesn’t have permissions to checkout.First, I suggest that you include details of the username/password to use with SVN – inside your script:
Next, change the line in your crontab to this:
Then, when the job executes, any errors would be sent to you via email. At least you’ll see what is going wrong.