Hi Thomas,
just to be sure: so "./script/snapshot" works when you run it manually,
but not from the crontab?
I would actually both to fail, unless you run them as root or prefixed
with "sudo" - the backup script demands to be run as a superuser.
Note that this superuser requirement will soon go away - I've worked on
a few improvements to the snapshot scripts which I aim to push this week.
cheers,
Thomas
On 03/19/2013 06:22 PM, Thomas Chemineau wrote:
Hi,
I have a running Gitorious installation into 2.4.10 version.
I would like to schedule a snapshot task into a cron job which should
be executed under root privileges (as mentionned into Gitorious online
doc).
Here is my cron job defined into /etc/cron.d/gitorious:
--8<------
RUBY_HOME=/opt/ruby-enterprise
GITORIOUS_HOME=/opt/gitorious
*/5 * * * * root /opt/gitorious-cronjob.sh
--8<------
Here is the simple script:
--8<------
#!/bin/bash
# Lock file
LOCKFILE="/var/lock/gitorious-cronjob.lock"
# Check lock file
[ -f $LOCKFILE ] && exit 2
# Lock this cronjob
echo $$ > $LOCKFILE
# Export path
if [ -n "$GITORIOUS_HOME" ] && [ -n "$RUBY_HOME" ]; then
export PATH=$GITORIOUS_HOME/bin:$RUBY_HOME/bin:$PATH
fi
# Run jobs
cd /opt/gitorious
./script/snapshot ~git/gitorious-$(date +%Y%m%d).tar.gz
# Remove lock file
rm -f $LOCKFILE
--8<------
When I run manually this simple script, all is working fine and an
archive is correclty created into "~git" directory.
But the corresponding cron job failed with the following error:
--8<------
X-Cron-Env: <RUBY_HOME=/opt/ruby-enterprise>
X-Cron-Env: <GITORIOUS_HOME=/opt/gitorious>
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
Snapshotting state...
(in /opt/gitorious)
Please run the task as superuser/root!
Snapshot done.
--8<------
I had a look into the file "lib/tasks/backup.rake", and into the
function called "exif_if_sudo". There is a condition which referred to
"Process.uid". This statement returns "500", the uid of my "git" user
which owns the entire "/opt/gitorious directory".
There is something I do not understand. So, any help would be greatly
appreciated.
Cheers,
Thomas.
--
--
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
---
You received this message because you are subscribed to the Google
Groups "Gitorious" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.
--
Best regards,
Thomas Kjeldahl Nilsson,
Partner & Programmer,
Gitorious AS
http://gitorious.com
--
--
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
---
You received this message because you are subscribed to the Google Groups "Gitorious" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.