{%- from "linux/map.jinja" import system with context %} {%- if system.enabled %} include: - linux.system.user {%- for name, job in system.job.items() %} linux_job_{{ job.command }}: {%- if job.enabled|default(True) %} cron.present: - name: > {{ job.command }} {%- if job.get('identifier', True) %} - identifier: {{ job.get('identifier', job.get('name', name)) }} {%- endif %} - user: {{ job.user|default("root") }} {%- if job.minute is defined %} - minute: '{{ job.minute }}' {%- endif %} {%- if job.hour is defined %} - hour: '{{ job.hour }}' {%- endif %} {%- if job.daymonth is defined %} - daymonth: '{{ job.daymonth }}' {%- endif %} {%- if job.month is defined %} - month: '{{ job.month }}' {%- endif %} {%- if job.dayweek is defined %} - dayweek: '{{ job.dayweek }}' {%- endif %} {%- if job.user|default("root") in system.get('user', {}).keys() %} - require: - user: system_user_{{ job.user|default("root") }} {%- endif %} {%- else %} cron.absent: - name: {{ job.command }} {%- if job.get('identifier', True) %} - identifier: {{ job.get('identifier', job.get('name', name)) }} {%- endif %} {%- endif %} {%- endfor %} {%- endif %}