From aeb87eaed65bb6405eacbaec7a9d34f0f5845f8f Mon Sep 17 00:00:00 2001 From: Paul Bovbel Date: Tue, 18 Jun 2024 15:27:22 -0400 Subject: [PATCH] Cloud home-assistant and wyze bridge --- .../bovbel/host_vars/media.bovbel.com.yaml | 38 ++---------- roles/caddy/templates/Caddyfile.j2 | 6 -- roles/homeassistant/defaults/main.yaml | 59 ++++++++++--------- roles/homeassistant/meta/main.yaml | 1 - .../homeassistant/tasks/00-homeassistant.yaml | 8 --- 5 files changed, 35 insertions(+), 77 deletions(-) diff --git a/inventory/bovbel/host_vars/media.bovbel.com.yaml b/inventory/bovbel/host_vars/media.bovbel.com.yaml index 229c596..4928f24 100644 --- a/inventory/bovbel/host_vars/media.bovbel.com.yaml +++ b/inventory/bovbel/host_vars/media.bovbel.com.yaml @@ -17,7 +17,6 @@ zfs_pool: storage # TODO(pbovbel) expose RDP over tailnet, and game server over WAN aws_alias_domains: - tower.bovbel.com - - homeassistant.bovbel.com docker_extras: services: @@ -70,39 +69,12 @@ docker_extras: x-systemd-requires: ['storage.mount'] jackett: x-systemd-requires: ['storage.mount'] - enshrouded: - image: sknnr/enshrouded-dedicated-server:proton-latest - container_name: enshrouded - networks: - - apps - environment: - SERVER_NAME: BraveNewWorldTwo - SERVER_PASSWORD: "{{ enshrouded_server_password }}" - SERVER_SLOTS: 16 - ports: - - "15636:15636/udp" - - "15636:15636/tcp" - - "15637:15637/udp" - - "15637:15637/tcp" - volumes: - - "{{ app_folder }}/enshrouded:/home/steam/enshrouded" - restart: "no" - x-systemd-enabled: false - x-systemd-requires: ['storage.mount'] - -upnp_forwards_extras: - enshrouded1: {from: 15636, to: 15636, proto: tcp} - enshrouded2: {from: 15636, to: 15636, proto: udp} - enshrouded3: {from: 15637, to: 15637, proto: tcp} - enshrouded4: {from: 15637, to: 15637, proto: udp} -enshrouded_server_password: !vault | - $ANSIBLE_VAULT;1.1;AES256 - 35623830653934623634353863353134386531613638316633353233663861376265653835343265 - 3965663735653263346137393931366239363930333564650a383764383564633761666531396630 - 62336134363635623765353266323732346261356437363835663662373232303264346464633964 - 3637396338643166390a636633613930386338623335616635393636366666356338633530626364 - 3563 +# upnp_forwards_extras: +# enshrouded1: {from: 15636, to: 15636, proto: tcp} +# enshrouded2: {from: 15636, to: 15636, proto: udp} +# enshrouded3: {from: 15637, to: 15637, proto: tcp} +# enshrouded4: {from: 15637, to: 15637, proto: udp} caddy_extras: users: diff --git a/roles/caddy/templates/Caddyfile.j2 b/roles/caddy/templates/Caddyfile.j2 index 5ce22e2..ab95799 100644 --- a/roles/caddy/templates/Caddyfile.j2 +++ b/roles/caddy/templates/Caddyfile.j2 @@ -113,9 +113,3 @@ {% endfor %} } - -{% for subdomain in caddy.subdomains.values() %} - -# TODO(pbovbel) implement - -{% endfor %} diff --git a/roles/homeassistant/defaults/main.yaml b/roles/homeassistant/defaults/main.yaml index 106b018..c9b02dd 100644 --- a/roles/homeassistant/defaults/main.yaml +++ b/roles/homeassistant/defaults/main.yaml @@ -25,36 +25,37 @@ docker_homeassistant: volumes: - "{{ app_folder }}/matter-server:/data" - /run/dbus:/run/dbus:ro - whisper: - container_name: whisper - image: rhasspy/wyoming-whisper + wyze-bridge: + container_name: wyze-bridge + # network_mode: host # Required for mDNS to work correctly networks: - apps + image: mrlt8/wyze-bridge:latest restart: "no" - volumes: - - "{{ app_folder }}/whisper:/data" ports: - - 10300:10300 - command: --model tiny-int8 --language en - piper: - container_name: piper - image: rhasspy/wyoming-piper - networks: - - apps - restart: "no" - volumes: - - "{{ app_folder }}/piper:/data" - ports: - - 10200:10200 - command: --voice en_US-lessac-medium - - -caddy_homeassistant: - subdomains: - homeassistant: - type: proxy - auth: null - subdomain: homeassistant.bovbel.com - host: media.bovbel.com - port: 8123 - role: admin + - 1935:1935 # RTMP + - 8554:8554 # RTSP + - 8888:8888 # HLS + - 8889:8889 #WebRTC + - 8189:8189/udp # WebRTC/ICE + - 5000:5000 # WEB-UI + environment: + # [OPTIONAL] Credentials can be set in the WebUI + # API Key and ID can be obtained from the wyze dev portal: + # https://developer-api-console.wyze.com/#/apikey/view + WYZE_EMAIL: "{{ ansible_email }}" + WYZE_PASSWORD: !vault | + $ANSIBLE_VAULT;1.1;AES256 + 63666331623761326537613530666430663334346661333664646532383034393766343230613434 + 3935356335666531356434393133303166313030306464390a353432636134383365313031353761 + 30626362383339363936393336343431633033363139343461656163313464393536353362333063 + 3562636133373866330a663261376230663462353833333632366532333465306365353164396462 + 6436 + API_ID: 20f6d458-93d2-4173-bb69-e4ed7e64af2f + API_KEY: ZNrna31H5TBwerrTfBc47sB65U0WHIqWco6XzlhLtBMEUucqmTrEsChIdfiB + # [OPTIONAL] IP Address of the host to enable WebRTC e.g.,: + # - WB_IP=192.168.1.122 + # WebUI and Stream authentication: + WB_AUTH: false # Set to false to disable web and stream auth. + # WB_USERNAME= + # WB_PASSWORD=n_US-lessac-medium diff --git a/roles/homeassistant/meta/main.yaml b/roles/homeassistant/meta/main.yaml index d99bc92..84c085b 100644 --- a/roles/homeassistant/meta/main.yaml +++ b/roles/homeassistant/meta/main.yaml @@ -1,4 +1,3 @@ --- dependencies: - docker - - caddy diff --git a/roles/homeassistant/tasks/00-homeassistant.yaml b/roles/homeassistant/tasks/00-homeassistant.yaml index f2027ef..c18b8ae 100644 --- a/roles/homeassistant/tasks/00-homeassistant.yaml +++ b/roles/homeassistant/tasks/00-homeassistant.yaml @@ -1,12 +1,4 @@ --- -- name: configure homeassistant caddy - set_fact: - caddy: "{{ caddy | combine(caddy_homeassistant, recursive=True, list_merge='append') }}" - cacheable: true - changed_when: true - notify: configure caddy - tags: caddy - - name: configure homeassistant docker set_fact: docker: "{{ docker | combine(docker_homeassistant, recursive=True, list_merge='append') }}"