initial plugins

This commit is contained in:
Steven Foerster
2021-12-02 12:13:26 -05:00
parent d4c43c527d
commit 78b9bf997a
71 changed files with 114 additions and 0 deletions
@@ -0,0 +1,26 @@
version: '3'
services:
homeassistant:
container_name: mistborn_production_home_assistant
image: homeassistant/home-assistant:stable
volumes:
- ../../mistborn_volumes/extra/homeassistant/config:/config
environment:
- TZ=America/New_York
labels:
- "traefik.enable=true"
- "traefik.http.routers.homeassistant-http.rule=Host(`homeassistant.mistborn`)"
- "traefik.http.routers.homeassistant-http.entrypoints=web"
- "traefik.http.routers.homeassistant-http.middlewares=mistborn_auth@file"
- "traefik.http.routers.homeassistant-https.rule=Host(`homeassistant.mistborn`)"
- "traefik.http.routers.homeassistant-https.entrypoints=websecure"
- "traefik.http.routers.homeassistant-https.middlewares=mistborn_auth@file"
- "traefik.http.routers.homeassistant-https.tls.certresolver=basic"
- "traefik.http.services.homeassistant-service.loadbalancer.server.port=8123"
restart: unless-stopped
networks:
default:
external:
name: mistborn_default
Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

+9
View File
@@ -0,0 +1,9 @@
[DEFAULT]
name = homeassistant
subdomain = homeassistant
desc = Home Assistant is an Open source home automation software that puts local control and privacy first.
img = img/homeassistant.png
compose = compose/docker-compose.yml
service = service/plugin.service
resources = resources
+54
View File
@@ -0,0 +1,54 @@
#!/bin/bash
HASS_CONFIG="/opt/mistborn_volumes/extra/homeassistant/config/configuration.yaml"
if [[ -f "$HASS_CONFIG" ]]; then
# configuration.yaml exists
if [[ ! -z $(grep "use_x_forwarded_for: true" "$HASS_CONFIG") ]]; then
# FOUND
exit 0;
fi
# add the proxy config
# write the trusted proxies config
cat >> ${HASS_CONFIG}<< EOF
http:
use_x_forwarded_for: true
trusted_proxies:
- 172.16.0.0/12
EOF
exit 0;
fi
# create parent directory if needed
PARENTDIR="$(dirname $HASS_CONFIG)"
if [[ ! -d "$PARENTDIR" ]]; then
mkdir -p $PARENTDIR
fi
# write the trusted proxies config
cat >> ${HASS_CONFIG}<< EOF
# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:
# Text to speech
#tts:
# - platform: google_translate
#group: !include groups.yaml
#automation: !include automations.yaml
#script: !include scripts.yaml
#scene: !include scenes.yaml
http:
use_x_forwarded_for: true
trusted_proxies:
- 172.16.0.0/12
EOF
@@ -0,0 +1,23 @@
[Unit]
Description=Mistborn Home Assistant
Requires=Mistborn-base.service
After=Mistborn-base.service
PartOf=Mistborn-base.service
[Service]
Restart=always
RestartSec=15
User=root
Group=docker
PermissionsStartOnly=true
# Shutdown container (if running) when unit is stopped
ExecStartPre=/opt/mistborn/scripts/wrappers/mistborn_docker.sh homeassistant docker-compose -f /opt/mistborn/extra/homeassistant.yml down
# Start container when unit is started
ExecStart=/opt/mistborn/scripts/wrappers/mistborn_docker.sh homeassistant docker-compose -f /opt/mistborn/extra/homeassistant.yml up --build
# Stop container when unit is stopped
ExecStop=/opt/mistborn/scripts/wrappers/mistborn_docker.sh homeassistant docker-compose -f /opt/mistborn/extra/homeassistant.yml down
# Post stop
[Install]
WantedBy=Mistborn-base.service