summaryrefslogtreecommitdiff
path: root/roles/install_wireguard_backbone/tasks/main.yml
blob: b1851735ff0fe7d0802d5daa8e5d8e645cc48b4e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
---
- name: create wireguard backbone service template
  copy:
      src: wgbackbone@.service
      dest: /etc/systemd/system/wgbackbone@.service

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

- 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([]) }}"