CONSFIGURATOR.PROPERTY.CRON
API reference
General
Property: CRON:SYSTEM-JOB
(cron:system-job desc when user shell-command)
Installs a cronjob running SHELL-COMMAND as USER to /etc/cron.*
.
DESC must be unique, as it will be used as a filename for a script. WHEN is
either :DAILY, WEEKLY, :MONTHLY or a string formatted according to crontab(5),
e.g. 0 3 * * *
.
The output of the cronjob will be mailed only if the job exits nonzero.
Property: CRON:NICE-SYSTEM-JOB
(cron:nice-system-job desc when user shell-command)
Like CRON:SYSTEM-JOB, but run the command niced and ioniced.
Property: CRON:RUNS-CONSFIGURATOR
(cron:runs-consfigurator when)
Re-execute the most recent deployment that included an application of this property, or of IMAGE-DUMPED with no arguments, using CRON:NICE-SYSTEM-JOB.
This can be useful to ensure that your system remains in a consistent state between manual deployments, and to ensure the timely application of properties modified by the PERIODIC:AT-MOST combinator.
For hosts to which this property is applied, mixing usage of DEPLOY and DEPLOY-THESE (or HOSTDEPLOY and HOSTDEPLOY-THESE, etc.) can lead to some inconsistent situations. For example, suppose you
(hostdeploy foo.example.org (additional-property))
and then later
(hostdeploy-these foo.example.org (unapplied (additional-property)).
As neither CRON:RUNS-CONFIGURATOR nor IMAGE-DUMPED with no arguments was applied since ADDITIONAL-PROPERTY was unapplied, the executable invoked by the CRON:RUNS-CONFIGURATOR cronjob will try to apply ADDITIONAL-PROPERTY again. One straightforward way to reduce the incidence of this sort of problem would be to refrain from using the ADDITIONAL-PROPERTIES argument to DEPLOY, HOSTDEPLOY etc.
You may wish to apply this property within ESEQPROPS-UNTIL; see the docstring of IMAGE-DUMPED.
Property: CRON:USER-CRONTAB-INSTALLED
(cron:user-crontab-installed env &rest jobs)
Set the contents of the current user’s crontab. ENV is like the ENV argument to RUN/MRUN, except that the environment variables will be set at the top of the generated crontab. Each of JOBS is a line for the body of the crontab. In both ENV and JOBS, the string “$HOME” is replaced with the remote home directory.