Add role dd24-dyndns-cron

Setup cron job to call curl for DynDNS update
This commit is contained in:
Stefan Haun 2022-08-03 20:19:09 +02:00
parent 346cc41148
commit 20942f8f4b
4 changed files with 39 additions and 0 deletions

View file

@ -0,0 +1,5 @@
# DD24 Cron configuration
---
dyndns_domain: www.example.com
dyndns_password: yourpassword
dyndns_ip: auto

View file

@ -0,0 +1,10 @@
# handlers file for cron-dd24-dyndns
---
- name: reload cron
ansible.builtin.shell:
cmd: service cron reload
warn: no
# Use the shell call because the task sometimes has problems finding the service state
# service:
# name: cron
# state: restarted

View file

@ -0,0 +1,18 @@
---
- name: Make sure cron and curl are installed
apt:
name:
- cron
- curl
state: present
- name: Setup cron file for DD24 updates
ansible.builtin.template:
src: "templates/dd24-dyndns.cron.j2"
dest: "/etc/cron.d/dd24-dyndns"
owner: root
group: root
mode: "0644"
notify: reload cron
# There is ansible.builtin.cron, but this makes configuration much
# more complicated, so we stick to the template.

View file

@ -0,0 +1,6 @@
# /etc/cron.d/dd24-dyndns: Cron call to renew DynDNS entry
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
*/5 * * * * root curl "https://dynamicdns.key-systems.net/update.php?hostname={{dyndns_domain}}&password={{dyndns_password}}&ip={{dyndns_ip}}" > /dev/null