Compare commits
No commits in common. "301889ab8b509770c926dc46312d739bf4080c7c" and "d90e0a18e8697bc2239d2f4cfeacea5353058a89" have entirely different histories.
301889ab8b
...
d90e0a18e8
6 changed files with 18 additions and 149 deletions
|
@ -1,37 +1,20 @@
|
||||||
users = {
|
users = {
|
||||||
'homeassistant': {
|
'homeassistant': {
|
||||||
'home': '/opt/homeassistant',
|
'home': '/var/lib/homeassistant',
|
||||||
'groups': [
|
|
||||||
'dialout',
|
|
||||||
#'gpio',
|
|
||||||
#'i2c',
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
directories = {
|
directories = {
|
||||||
'/opt/homeassistant': {
|
'/var/lib/homeassistant': {
|
||||||
'owner': 'homeassistant',
|
'owner': 'homeassistant',
|
||||||
'group': 'homeassistant',
|
|
||||||
},
|
},
|
||||||
'/opt/homeassistant/data': {
|
'/var/lib/homeassistant/config': {
|
||||||
'owner': 'homeassistant',
|
'owner': 'homeassistant',
|
||||||
'group': 'homeassistant',
|
|
||||||
},
|
},
|
||||||
'/opt/homeassistant/venv': {
|
'/var/lib/homeassistant/venv': {
|
||||||
'owner': 'homeassistant',
|
'owner': 'homeassistant',
|
||||||
'group': 'homeassistant',
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
svc_systemd = {
|
|
||||||
'homeassistant.service': {},
|
|
||||||
}
|
|
||||||
|
|
||||||
# venv manually managed for now
|
# https://wiki.instar.com/de/Software/Linux/Home_Assistant/
|
||||||
'''
|
|
||||||
python3 -m venv /opt/homeassistant/venv
|
|
||||||
source /opt/homeassistant/venv/bin/activate
|
|
||||||
python3 -m pip install wheel
|
|
||||||
pip3 install homeassistant
|
|
||||||
'''
|
|
||||||
|
|
|
@ -12,62 +12,9 @@ defaults = {
|
||||||
'autoconf': {},
|
'autoconf': {},
|
||||||
'build-essential': {},
|
'build-essential': {},
|
||||||
'libopenjp2-7': {},
|
'libopenjp2-7': {},
|
||||||
|
'libtiff5': {},
|
||||||
'libturbojpeg0-dev': {},
|
'libturbojpeg0-dev': {},
|
||||||
'tzdata': {},
|
'tzdata': {},
|
||||||
#'bluez': {},
|
|
||||||
'libtiff6': {},
|
|
||||||
'ffmpeg': {},
|
|
||||||
'liblapack3': {},
|
|
||||||
'liblapack-dev': {},
|
|
||||||
'libatlas-base-dev': {},
|
|
||||||
'libpcap-dev': {},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'systemd': {
|
|
||||||
'units': {
|
|
||||||
f'homeassistant.service': {
|
|
||||||
'Unit': {
|
|
||||||
'Description': "Home Assstant",
|
|
||||||
'After': 'network.target',
|
|
||||||
},
|
|
||||||
'Service': {
|
|
||||||
'User': 'homeassistant',
|
|
||||||
'Group': 'homeassistant',
|
|
||||||
'WorkingDirectory': "/opt/homeassistant",
|
|
||||||
'ExecStart': "/opt/homeassistant/venv/bin/python3 /opt/homeassistant/venv/bin/hass -c /opt/homeassistant/data",
|
|
||||||
},
|
|
||||||
'Install': {
|
|
||||||
'WantedBy': {
|
|
||||||
'multi-user.target'
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'zfs': {
|
|
||||||
'datasets': {
|
|
||||||
'tank/homeassistant': {
|
|
||||||
'mountpoint': '/opt/homeassistant/data',
|
|
||||||
'needed_by': {
|
|
||||||
'user:homeassistant',
|
|
||||||
'directory:/opt/homeassistant',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@metadata_reactor.provides(
|
|
||||||
'nginx/vhosts',
|
|
||||||
)
|
|
||||||
def nginx(metadata):
|
|
||||||
return {
|
|
||||||
'nginx': {
|
|
||||||
'vhosts': {
|
|
||||||
metadata.get('homeassistant/domain'): {
|
|
||||||
'content': 'homeassistant/vhost.conf',
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,19 +20,18 @@ files = {
|
||||||
}
|
}
|
||||||
|
|
||||||
actions = {
|
actions = {
|
||||||
'systemd-locale': {
|
|
||||||
'command': f'localectl set-locale LANG="{default_locale}"',
|
|
||||||
'unless': f'localectl | grep -Fi "system locale" | grep -Fi "{default_locale}"',
|
|
||||||
'triggers': {
|
|
||||||
'action:locale-gen',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'locale-gen': {
|
'locale-gen': {
|
||||||
'command': 'locale-gen',
|
'command': 'locale-gen',
|
||||||
'triggered': True,
|
'triggered': True,
|
||||||
'needs': {
|
'needs': {
|
||||||
'pkg_apt:locales',
|
'pkg_apt:locales',
|
||||||
'action:systemd-locale',
|
},
|
||||||
|
},
|
||||||
|
'systemd-locale': {
|
||||||
|
'command': f'localectl set-locale LANG="{default_locale}"',
|
||||||
|
'unless': f'localectl | grep -Fi "system locale" | grep -Fi "{default_locale}"',
|
||||||
|
'preceded_by': {
|
||||||
|
'action:locale-gen',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,21 +0,0 @@
|
||||||
map $http_upgrade $connection_upgrade {
|
|
||||||
default upgrade;
|
|
||||||
'' close;
|
|
||||||
}
|
|
||||||
|
|
||||||
server {
|
|
||||||
listen 443 ssl http2;
|
|
||||||
listen [::]:443 ssl http2;
|
|
||||||
server_name ${server_name};
|
|
||||||
|
|
||||||
ssl_certificate /var/lib/dehydrated/certs/${server_name}/fullchain.pem;
|
|
||||||
ssl_certificate_key /var/lib/dehydrated/certs/${server_name}/privkey.pem;
|
|
||||||
|
|
||||||
location / {
|
|
||||||
proxy_http_version 1.1;
|
|
||||||
proxy_set_header Upgrade $http_upgrade;
|
|
||||||
proxy_set_header Connection $connection_upgrade;
|
|
||||||
proxy_set_header Host $http_host;
|
|
||||||
proxy_pass http://127.0.0.1:8123;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,39 +0,0 @@
|
||||||
{
|
|
||||||
'hostname': '10.0.0.16',
|
|
||||||
'groups': [
|
|
||||||
'autologin',
|
|
||||||
'backup',
|
|
||||||
'debian-12',
|
|
||||||
'hardware',
|
|
||||||
'home',
|
|
||||||
'monitored',
|
|
||||||
'raspberry-pi',
|
|
||||||
'webserver',
|
|
||||||
],
|
|
||||||
'bundles': [
|
|
||||||
'homeassistant',
|
|
||||||
'zfs',
|
|
||||||
],
|
|
||||||
'metadata': {
|
|
||||||
'id': '3d67964d-1270-4d3c-b93f-9c44219b3d59',
|
|
||||||
'network': {
|
|
||||||
'internal': {
|
|
||||||
'interface': 'eth0',
|
|
||||||
'ipv4': '10.0.0.16/24',
|
|
||||||
'gateway4': '10.0.0.1',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'homeassistant': {
|
|
||||||
'domain': 'homeassistant.ckn.li',
|
|
||||||
},
|
|
||||||
'zfs': {
|
|
||||||
'pools': {
|
|
||||||
'tank': {
|
|
||||||
'devices': [
|
|
||||||
'/var/lib/zfs/tank.img',
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
|
@ -21,6 +21,11 @@
|
||||||
'zfs',
|
'zfs',
|
||||||
],
|
],
|
||||||
'metadata': {
|
'metadata': {
|
||||||
|
'wordpress': {
|
||||||
|
'elimukwanza': {
|
||||||
|
'domain': 'elimu-kwanza.de',
|
||||||
|
},
|
||||||
|
},
|
||||||
'id': 'ea29bdf0-0b47-4bf4-8346-67d60c9dc4ae',
|
'id': 'ea29bdf0-0b47-4bf4-8346-67d60c9dc4ae',
|
||||||
'network': {
|
'network': {
|
||||||
'internal': {
|
'internal': {
|
||||||
|
@ -79,11 +84,6 @@
|
||||||
'download-server': {
|
'download-server': {
|
||||||
'hostname': 'dl.sublimity.de',
|
'hostname': 'dl.sublimity.de',
|
||||||
},
|
},
|
||||||
'wordpress': {
|
|
||||||
'elimukwanza': {
|
|
||||||
'domain': 'elimu-kwanza.de',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'left4dead2': {
|
'left4dead2': {
|
||||||
'servers': {
|
'servers': {
|
||||||
'standard': {
|
'standard': {
|
||||||
|
|
Loading…
Reference in a new issue