``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 .. code-block:: none (hostdeploy foo.example.org (additional-property)) and then later .. code-block:: none (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.