diff options
author | Rob Austein <sra@hactrn.net> | 2013-02-02 19:08:34 +0000 |
---|---|---|
committer | Rob Austein <sra@hactrn.net> | 2013-02-02 19:08:34 +0000 |
commit | 61ecf6aea80a96e4008ea7fa73c5bb5fd0597bc1 (patch) | |
tree | 071c97390893d01505c9099dccd70667e0eaff6d | |
parent | 6ef867d68cc340f7322e9ae5d29af55900dca69f (diff) |
Exit without whining when another process holds the lock.
svn path=/branches/tk377/; revision=5014
-rw-r--r-- | rcynic/rcynic-cron.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/rcynic/rcynic-cron.py b/rcynic/rcynic-cron.py index a2875401..4687ff5b 100644 --- a/rcynic/rcynic-cron.py +++ b/rcynic/rcynic-cron.py @@ -32,6 +32,7 @@ import sys import fcntl import os import pwd +import errno we_are_root = os.getuid() == 0 @@ -71,7 +72,10 @@ try: pw = pwd.getpwnam(ac_rcynic_user) os.fchown(lock, pw.pw_uid, pw.pw_gid) except (IOError, OSError), e: - sys.exit("Error %r opening lock %r" % (e.strerror, os.path.join(ac_rcynic_dir, "data/lock"))) + if e.errno == errno.EAGAIN: + sys.exit(0) # Another instance of this script is already running, exit silently + else: + sys.exit("Error %r opening lock %r" % (e.strerror, os.path.join(ac_rcynic_dir, "data/lock"))) run(bin("rcynic", chroot = True), "-c", etc("rcynic.conf", chroot = True), chroot = True) |