Add role dd24-dyndns-cron
Setup cron job to call curl for DynDNS update
This commit is contained in:
parent
346cc41148
commit
20942f8f4b
4 changed files with 39 additions and 0 deletions
5
roles/dd24-dyndns-cron/defaults/main.yml
Normal file
5
roles/dd24-dyndns-cron/defaults/main.yml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# DD24 Cron configuration
|
||||||
|
---
|
||||||
|
dyndns_domain: www.example.com
|
||||||
|
dyndns_password: yourpassword
|
||||||
|
dyndns_ip: auto
|
10
roles/dd24-dyndns-cron/handlers/main.yml
Normal file
10
roles/dd24-dyndns-cron/handlers/main.yml
Normal 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
|
18
roles/dd24-dyndns-cron/tasks/main.yml
Normal file
18
roles/dd24-dyndns-cron/tasks/main.yml
Normal 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.
|
6
roles/dd24-dyndns-cron/templates/dd24-dyndns.cron.j2
Normal file
6
roles/dd24-dyndns-cron/templates/dd24-dyndns.cron.j2
Normal 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
|
Loading…
Reference in a new issue