diff options
Diffstat (limited to 'roles/install_wireguard_backbone/tasks/main.yml')
-rw-r--r-- | roles/install_wireguard_backbone/tasks/main.yml | 60 |
1 files changed, 56 insertions, 4 deletions
diff --git a/roles/install_wireguard_backbone/tasks/main.yml b/roles/install_wireguard_backbone/tasks/main.yml index 9ccfe05..b185173 100644 --- a/roles/install_wireguard_backbone/tasks/main.yml +++ b/roles/install_wireguard_backbone/tasks/main.yml @@ -4,8 +4,60 @@ src: wgbackbone@.service dest: /etc/systemd/system/wgbackbone@.service -- include_tasks: fastd_tasks.yml - when: "'fastd' in group_names" +- name: create wireguard config for uplinks + template: + src: wg.conf.j2 + dest: /etc/wireguard/wgbb{{ hostvars[item]['wireguard_bb_name'] }}.conf + mode: 0400 + with_items: "{{ groups['fastd'] | difference([inventory_hostname]) }}" -- include_tasks: uplink_tasks.yml - when: "'uplink' in group_names" +- name: create wireguard config for additional peers + template: + src: wg2.conf.j2 + dest: /etc/wireguard/wgbb{{ item.name }}.conf + mode: 0400 + with_items: "{{ wireguard_bb_peers|default([]) }}" + +- name: create wireguard up scripts for uplinks + template: + src: up.sh.j2 + dest: /etc/wireguard/upbb{{ hostvars[item]['wireguard_bb_name'] }}.sh + mode: 0744 + with_items: "{{ groups['fastd'] | difference([inventory_hostname]) }}" + +- name: create wireguard up scripts for additional peers + template: + src: up2.sh.j2 + dest: /etc/wireguard/upbb{{ item.name }}.sh + mode: 0744 + with_items: "{{ wireguard_bb_peers|default([]) }}" + +- name: create wireguard down scripts for uplinks + template: + src: down.sh.j2 + dest: /etc/wireguard/downbb{{ hostvars[item]['wireguard_bb_name'] }}.sh + mode: 0744 + with_items: "{{ groups['fastd'] | difference([inventory_hostname]) }}" + +- name: create wireguard down scripts for additional peers + template: + src: down2.sh.j2 + dest: /etc/wireguard/downbb{{ item.name }}.sh + mode: 0744 + with_items: "{{ wireguard_bb_peers|default([]) }}" + +- name: start and enable wireguard mesh for uplinks + systemd: + name: wgbackbone@{{ hostvars[item]['wireguard_bb_name'] }}.service + enabled: yes + state: started + daemon_reload: yes + with_items: "{{ groups['fastd'] | difference([inventory_hostname]) }}" + +- name: start and enable wireguard mesh for additional peers + systemd: + name: wgbackbone@{{ item.name }}.service + enabled: yes + state: started + daemon_reload: yes + with_items: "{{ wireguard_bb_peers|default([]) }}" |