The cron state module allows for user crontabs to be cleanly managed.
Cron declarations require a number of parameters. The timing parameters, need to be declared, minute, hour, daymonth, month and dayweek. The user who's crontab is to be edited also needs to be defined.
By default the timing arguments are all * and the user is root. When making changes to an existing cron job the name declaration is the unique factor, so if and existing cron that looks like this:
date > /tmp/crontest:
cron.present:
- user: root
- minute: 5
Is changed to this:
date > /tmp/crontest:
cron.present:
- user: root
- minute: 7
- hour: 2
Then the existing cron will be updated, but if the cron command is changed, then a new cron job will be added to the user's crontab.
Members
Verifies that the specified cron job is absent for the specified user, only the name is matched when removing a cron job.
Verifies that the specified cron job is present for the specified user. For more advanced information about what exactly can be set in the cron timing parameters check your cron system's documentation. Most Unix-like systems' cron documentation can be found via the crontab man page: man 5 crontab.