Files
ansible/home_assistant.yaml

101 lines
3.0 KiB
YAML

- name: Setup Home Assistant
hosts: podman1
become: true
become_user: root
tasks:
- name: Pull Home Assistant image
containers.podman.podman_image:
name: ghcr.io/home-assistant/home-assistant:stable
- name: Pull Matter Server image
containers.podman.podman_image:
name: ghcr.io/matter-js/python-matter-server:stable
- name: Pull openthread image
containers.podman.podman_image:
name: docker.io/openthread/border-router:latest
- name: Create network for iot interface
containers.podman.podman_network:
name: iot
interface_name: br5
ipam_driver: "dhcp"
disable_dns: "true"
ipv6: true
opt:
mode: "unmanaged"
- name: Create network for infra interface
containers.podman.podman_network:
name: infra
interface_name: br2
ipam_driver: "dhcp"
disable_dns: "true"
opt:
mode: "unmanaged"
#- name: Create network for infra interface
# containers.podman.podman_network:
# name: access
# interface_name: br4
# ipam_driver: "dhcp"
# disable_dns: "true"
# opt:
# mode: "unmanaged"
- name: Create config directories
ansible.builtin.file:
path: "{{item}}"
state: directory
loop:
- /var/homeassistant
- /var/matter_server
- /var/thread_router
- name: Create Home Assistant Container
containers.podman.podman_container:
name: homeassistant
image: ghcr.io/home-assistant/home-assistant:stable
recreate: true
restart_policy: "unless-stopped"
hostname: homeassistant1
network:
- infra
- iot
privileged: true
state: started
volumes:
- "/var/homeassistant:/config"
- name: Create Matter Server Container
containers.podman.podman_container:
name: matter
image: ghcr.io/matter-js/python-matter-server:stable
hostname: matter1
recreate: true
restart_policy: "unless-stopped"
network:
- iot
privileged: true
state: started
volumes:
- "/var/matter_server:/data"
- name: Create OpenThread container
containers.podman.podman_container:
name: thread
image: docker.io/openthread/border-router:latest
hostname: openthread1
recreate: true
restart_policy: "unless-stopped"
network: host
cap_add:
- NET_ADMIN
- NET_RAW
device:
- "/dev/serial/by-id/usb-Nabu_Casa_ZBT-2_10B41DE60794-if00:/dev/ttyACM5"
- "/dev/net/tun"
state: started
volumes:
- "/var/thread_router:/data"
env:
OT_RCP_DEVICE: "spinel+hdlc+uart:///dev/ttyACM5?uart-baudrate=460800"
OT_INFRA_IF: "br5"
OT_THREAD_IF: "wpan0"
OT_LOG_LEVEL: "7"
OT_REST_LISTEN_ADDR: "0.0.0.0"
OT_REST_LISTEN_PORT: "8981"
OT_WEB_LISTEN_ADDR: "0.0.0.0"
OT_WEB_LISTEN_PORT: "8980"