- 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 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') }}" 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