- set_fact: job: '{{ {}|combine(cron.defaults, item.value, {"name": item.key}, recursive=True) }}' randomseed: "{{ inventory_hostname + item.key }}" - name: add cron jobs (random_daily) when: job.special_time == "random_daily" cron: name: "{{ job.name }}" job: "{{ job.job }}" user: "{{ job.user }}" hour: "{{ job.random_options.hour | random(seed=(randomseed + 'hour')) }}" minute: "{{ job.random_options.minute | random(seed=(randomseed + 'minute')) }}" - name: add cron jobs (random_weekly) when: job.special_time == "random_weekly" cron: name: "{{ job.name }}" job: "{{ job.job }}" user: "{{ job.user }}" weekday: "{{ job.random_options.weekday | random(seed=(randomseed + 'weekday')) }}" hour: "{{ job.random_options.hour | random(seed=(randomseed + 'hour')) }}" minute: "{{ job.random_options.minute | random(seed=(randomseed + 'minute')) }}" - name: add cron jobs (not special) when: not job.special_time cron: name: "{{ job.name }}" job: "{{ job.job }}" user: "{{ job.user }}" weekday: "{{ job.weekday }}" hour: "{{ job.hour }}" minute: "{{ job.minute }}"