ansible/roles/zerotier/tasks/main.yml

30 lines
1.1 KiB
YAML

#!/usr/bin/env ansible-playbook
# vim:ft=ansible:
---
- name: configure zerotier for apt
block:
- name: ensure zerotier repo key
ansible.builtin.apt_key: url="{{ zerotier_repo_deb_key }}"
- name: ensure zerotier repo
ansible.builtin.apt_repository: repo="{{ zerotier_repo_deb }}"
- name: update apt cache
ansible.builtin.apt: update_cache=yes cache_valid_time=86400
- name: ensure packages
ansible.builtin.apt: name=zerotier-one
when: ansible_pkg_mgr == "apt"
- name: template unit file
ansible.builtin.template: src=zerotier-one.service dest=/etc/systemd/system/zerotier-one.service mode=0644
notify: restart zerotier
- name: join networks
ansible.builtin.command:
argv: [ zerotier-cli, join, "{{ item }}" ]
with_items: "{{ zerotier_networks_join }}"
changed_when: no
- name: leave networks
ansible.builtin.command:
argv: [ zerotier-cli, leave, "{{ item }}" ]
register: zerotierleave
with_items: "{{ zerotier_networks_leave }}"
changed_when: no
failed_when: "'0 leave connection failed' in zerotierleave.stdout"