summaryrefslogtreecommitdiff
path: root/roles/dyndns/tasks/main.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/dyndns/tasks/main.yml')
-rw-r--r--roles/dyndns/tasks/main.yml75
1 files changed, 7 insertions, 68 deletions
diff --git a/roles/dyndns/tasks/main.yml b/roles/dyndns/tasks/main.yml
index e157644..9547f1a 100644
--- a/roles/dyndns/tasks/main.yml
+++ b/roles/dyndns/tasks/main.yml
@@ -1,72 +1,11 @@
-- name: Fetch digitalocean_dyndns source
- ansible.builtin.git:
- repo: git://git.joeac.net/digitalocean_dyndns.git
- dest: /usr/local/lib/digitalocean_dyndns
-
-- name: Mark get_ip_addr.sh executable
- ansible.builtin.file:
- path: /usr/local/lib/digitalocean_dyndns/get_ip_addr.sh
- owner: joeac.net
- group: joeac.net
- mode: "775"
-
-- name: Mark dyndns.sh executable
- ansible.builtin.file:
- path: /usr/local/lib/digitalocean_dyndns/dyndns.sh
- owner: joeac.net
- group: joeac.net
- mode: "775"
-
-- name: Symlink get_ip_addr.sh
- ansible.builtin.file:
- src: /usr/local/lib/digitalocean_dyndns/get_ip_addr.sh
- dest: /usr/bin/get_ip_addr.sh
- owner: joeac.net
- group: joeac.net
- state: link
-
-- name: Symlink dyndns.sh
- ansible.builtin.file:
- src: /usr/local/lib/digitalocean_dyndns/dyndns.sh
- dest: /usr/bin/dyndns.sh
- owner: joeac.net
- group: joeac.net
- state: link
-
-- name: Create config directory
- ansible.builtin.file:
- path: /etc/digitalocean_dyndns
- state: directory
+- name: Install DynDNS zone file
+ ansible.builtin.template:
+ src: dyndns.zone
+ dest: "{{ ovh_domain_zone_replace_records_directory }}/dyndns.zone"
mode: "644"
-- name: Create cache directory
- ansible.builtin.file:
- path: /var/digitalocean_dyndns
- state: directory
- mode: "666"
-
-- name: Create log directory
- ansible.builtin.file:
- path: /var/log/digitalocean_dyndns
- state: directory
- mode: "666"
-
-- name: Copy DIGITALOCEAN_TOKEN
- ansible.builtin.copy:
- src: DIGITALOCEAN_TOKEN
- dest: /etc/digitalocean_dyndns/DIGITALOCEAN_TOKEN
- mode: "640"
-
-- name: Install daily crontabs for dyndns (IPv4)
- loop: "{{ subdomains | map(attribute='name') }}"
- ansible.builtin.cron:
- special_time: daily
- name: daily crontab for dyndns for {{ item }}.joeac.net (IPv4)
- job: CACHE_DIR=/var/digitalocean_dyndns CONFIG_DIR=/etc/digitalocean_dyndns dyndns.sh 4 {{ item }}.joeac.net >> /var/log/digitalocean_dyndns/{{ item }}.joeac.net.ipv4.log
-
-- name: Install daily crontabs for dyndns (IPv6)
- loop: "{{ subdomains | map(attribute='name') }}"
+- name: Install daily crontabs for DynDNS
ansible.builtin.cron:
special_time: daily
- name: daily crontab for dyndns for {{ item }}.joeac.net (IPv6)
- job: CACHE_DIR=/var/digitalocean_dyndns CONFIG_DIR=/etc/digitalocean_dyndns CONN_DEVICE_NAME={{ ansible_facts.default_ipv4.alias }} dyndns.sh 6 {{ item }}.joeac.net >> /var/log/digitalocean_dyndns/{{ item }}.joeac.net.ipv6.log
+ name: daily crontab for DynDNS
+ job: update_ovhcloud_domain_zone >> {{ ovh_domain_zone_log_directory }}/cron.log