/
/
/
Ansible role that deploys my edge device with connectivity containers. Currently it deploys a thread border router via the zbt-1 dongle by Home Assistant, a zigbee2MQTT interface using the Sonoff zigbee dongle and a DSMR reader with a generic P1 to USB converter.
1---
2
3- name: Ensure Zigbee2MQTT data dir
4 ansible.builtin.file:
5 path: "{{ z2m_data_dir }}"
6 state: directory
7 owner: "ansible"
8 group: "users"
9 mode: "0775"
10
11- name: Render Zigbee2MQTT configuration
12 ansible.builtin.template:
13 src: zigbee2mqtt-config.yml.j2
14 dest: "{{ z2m_compose_dir }}/config/configuration.yaml"
15 owner: "ansible"
16 group: "users"
17 mode: "0664"
18
19- name: Create Z2M compose directory
20 ansible.builtin.file:
21 path: "{{ z2m_compose_dir }}"
22 state: directory
23 owner: "ansible"
24 group: "users"
25 mode: "0775"
26
27- name: Create Z2M config directory
28 ansible.builtin.file:
29 path: "{{ z2m_compose_dir }}/config"
30 state: directory
31 owner: "ansible"
32 group: "users"
33 mode: "0775"
34
35- name: Render Z2M compose
36 ansible.builtin.template:
37 src: zigbee2mqtt-docker-compose.yml.j2
38 dest: "{{ z2m_compose_dir }}/docker-compose.yml"
39 owner: "ansible"
40 group: "users"
41 mode: "0664"
42
43
44- name: Stop and remove existing Zigbee2MQTT containers
45 community.docker.docker_compose_v2:
46 project_src: "{{ z2m_compose_dir }}"
47 state: absent
48 ignore_errors: yes
49
50- name: Bring up Zigbee2MQTT
51 community.docker.docker_compose_v2:
52 project_src: "{{ z2m_compose_dir }}"
53 state: present
54
55