Merge pull request #2768 from quinot/topic/abs_cron_file

Allow cron_file to be an absolute path
reviewable/pr18780/r1
Brian Coca 9 years ago
commit 493f06435c

@ -66,7 +66,9 @@ options:
choices: [ "present", "absent" ] choices: [ "present", "absent" ]
cron_file: cron_file:
description: description:
- If specified, uses this file in cron.d instead of an individual user's crontab. - If specified, uses this file instead of an individual user's crontab.
If this is a relative path, it is interpreted with respect to
/etc/cron.d. (If it is absolute, it will typically be /etc/crontab).
To use the C(cron_file) parameter you must specify the C(user) as well. To use the C(cron_file) parameter you must specify the C(user) as well.
required: false required: false
default: null default: null
@ -170,7 +172,7 @@ class CronTab(object):
CronTab object to write time based crontab file CronTab object to write time based crontab file
user - the user of the crontab (defaults to root) user - the user of the crontab (defaults to root)
cron_file - a cron file under /etc/cron.d cron_file - a cron file under /etc/cron.d, or an absolute path
""" """
def __init__(self, module, user=None, cron_file=None): def __init__(self, module, user=None, cron_file=None):
self.module = module self.module = module
@ -180,7 +182,10 @@ class CronTab(object):
self.ansible = "#Ansible: " self.ansible = "#Ansible: "
if cron_file: if cron_file:
self.cron_file = '/etc/cron.d/%s' % cron_file if os.path.isabs(cron_file):
self.cron_file = cron_file
else:
self.cron_file = os.path.join('/etc/cron.d', cron_file)
else: else:
self.cron_file = None self.cron_file = None

Loading…
Cancel
Save