home.openhab: install and configure openhab
Some checks failed
kunsi/bundlewrap/pipeline/head There was a failure building this commit
Some checks failed
kunsi/bundlewrap/pipeline/head There was a failure building this commit
This commit is contained in:
parent
aa8f19d948
commit
f482874310
8 changed files with 213 additions and 3 deletions
|
@ -44,6 +44,7 @@ Rule of thumb: keep ports below 10000 free for stuff that reserves ports.
|
||||||
| 22060 | pretalx | gunicorn |
|
| 22060 | pretalx | gunicorn |
|
||||||
| 22070 | paperless-ng | gunicorn |
|
| 22070 | paperless-ng | gunicorn |
|
||||||
| 22080 | netbox | gunicorn |
|
| 22080 | netbox | gunicorn |
|
||||||
|
| 22090 | openhab | http |
|
||||||
| 22999 | nginx | stub_status |
|
| 22999 | nginx | stub_status |
|
||||||
|
|
||||||
## UDP
|
## UDP
|
||||||
|
|
62
bundles/openhab/files/openhab
Normal file
62
bundles/openhab/files/openhab
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
# openHAB service options
|
||||||
|
|
||||||
|
#########################
|
||||||
|
## PORTS
|
||||||
|
## The ports openHAB will bind its HTTP/HTTPS web server to.
|
||||||
|
|
||||||
|
OPENHAB_HTTP_PORT=22090
|
||||||
|
#OPENHAB_HTTPS_PORT=8443
|
||||||
|
|
||||||
|
#########################
|
||||||
|
## HTTP(S) LISTEN ADDRESS
|
||||||
|
## The listen address used by the HTTP(S) server.
|
||||||
|
## 0.0.0.0 (default) allows a connection from any location
|
||||||
|
## 127.0.0.1 only allows the local machine to connect
|
||||||
|
|
||||||
|
OPENHAB_HTTP_ADDRESS=127.0.0.1
|
||||||
|
|
||||||
|
#########################
|
||||||
|
## BACKUP DIRECTORY
|
||||||
|
## Set the following variable to specify the backup location.
|
||||||
|
## runtime/bin/backup and runtime/bin/restore will use this path for the zip files.
|
||||||
|
|
||||||
|
#OPENHAB_BACKUPS=/var/lib/openhab/backups
|
||||||
|
|
||||||
|
#########################
|
||||||
|
## JAVA OPTIONS
|
||||||
|
## Additional options for the JAVA_OPTS environment variable.
|
||||||
|
## These will be appended to the execution of the openHAB Java runtime in front of all other options.
|
||||||
|
##
|
||||||
|
## A couple of independent examples:
|
||||||
|
## EXTRA_JAVA_OPTS="-Dgnu.io.rxtx.SerialPorts=/dev/ttyZWAVE:/dev/ttyUSB0:/dev/ttyS0:/dev/ttyS2:/dev/ttyACM0:/dev/ttyAMA0"
|
||||||
|
## EXTRA_JAVA_OPTS="-Djna.library.path=/lib/arm-linux-gnueabihf/ -Duser.timezone=Europe/Berlin -Dgnu.io.rxtx.SerialPorts=/dev/ttyZWave"
|
||||||
|
|
||||||
|
EXTRA_JAVA_OPTS="${extra_java_opts}"
|
||||||
|
|
||||||
|
#########################
|
||||||
|
## OPENHAB DEFAULTS PATHS
|
||||||
|
## The following settings override the default apt/rpm locations and should be used with caution.
|
||||||
|
## openHAB will fail to update itself if you're using different paths.
|
||||||
|
## Only set these if you are testing and are confident in debugging.
|
||||||
|
|
||||||
|
#OPENHAB_HOME=/usr/share/openhab
|
||||||
|
#OPENHAB_CONF=/etc/openhab
|
||||||
|
#OPENHAB_RUNTIME=/usr/share/openhab/runtime
|
||||||
|
#OPENHAB_USERDATA=/var/lib/openhab
|
||||||
|
#OPENHAB_LOGDIR=/var/log/openhab
|
||||||
|
|
||||||
|
#########################
|
||||||
|
## OPENHAB USER AND GROUP
|
||||||
|
## The user and group that takes ownership of openHAB. Only available for init.d systems.
|
||||||
|
## To edit user and group for systemd, see the service file at /usr/lib/systemd/system/openhab.service.
|
||||||
|
|
||||||
|
#OPENHAB_USER=openhab
|
||||||
|
#OPENHAB_GROUP=openhab
|
||||||
|
|
||||||
|
#########################
|
||||||
|
## SYSTEMD START MODE
|
||||||
|
## The Karaf startmode for the openHAB runtime. Only available for systemctl/systemd systems.
|
||||||
|
## Defaults to daemon when unset here. Multiple options can be used without quotes.
|
||||||
|
## debug increases log output. daemon launches the Karaf/openHAB processes.
|
||||||
|
|
||||||
|
#OPENHAB_STARTMODE=debug
|
28
bundles/openhab/items.py
Normal file
28
bundles/openhab/items.py
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
extra_java_opts = []
|
||||||
|
|
||||||
|
for opt, value in sorted(node.metadata.get('openhab/java_opts', {}).items()):
|
||||||
|
if value is None:
|
||||||
|
extra_java_opts.append(f'-D{opt}')
|
||||||
|
else:
|
||||||
|
extra_java_opts.append(f'-D{opt}={value}')
|
||||||
|
|
||||||
|
files = {
|
||||||
|
'/etc/default/openhab': {
|
||||||
|
'content_type': 'mako',
|
||||||
|
'context': {
|
||||||
|
'extra_java_opts': ' '.join(extra_java_opts),
|
||||||
|
},
|
||||||
|
'triggers': {
|
||||||
|
'svc_systemd:openhab:restart',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
svc_systemd = {
|
||||||
|
'openhab': {
|
||||||
|
'needs': {
|
||||||
|
'pkg_apt:openhab',
|
||||||
|
'pkg_apt:openhab-addons',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
54
bundles/openhab/metadata.py
Normal file
54
bundles/openhab/metadata.py
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
defaults = {
|
||||||
|
'apt': {
|
||||||
|
'packages': {
|
||||||
|
'openjdk-11-jre': {},
|
||||||
|
'openhab': {
|
||||||
|
'needs': {
|
||||||
|
'pkg_apt:openjdk-11-jre',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'openhab-addons': {
|
||||||
|
'needs': {
|
||||||
|
'pkg_apt:openhab',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'repos': {
|
||||||
|
'openhab': {
|
||||||
|
'items': {
|
||||||
|
'deb https://openhab.jfrog.io/artifactory/openhab-linuxpkg stable main',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'backups': {
|
||||||
|
'paths': {
|
||||||
|
'/var/lib/openhab',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@metadata_reactor.provides(
|
||||||
|
'nginx/vhosts/openhab',
|
||||||
|
)
|
||||||
|
def nginx(metadata):
|
||||||
|
if not node.has_bundle('nginx'):
|
||||||
|
raise DoNotRunAgain
|
||||||
|
|
||||||
|
return {
|
||||||
|
'nginx': {
|
||||||
|
'vhosts': {
|
||||||
|
'openhab': {
|
||||||
|
'domain': metadata.get('openhab/domain'),
|
||||||
|
'locations': {
|
||||||
|
'/': {
|
||||||
|
'target': 'http://localhost:22090/',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'website_check_path': '/',
|
||||||
|
'website_check_string': 'opnHAB',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
52
data/apt/files/gpg-keys/openhab.asc
Normal file
52
data/apt/files/gpg-keys/openhab.asc
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
|
||||||
|
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
|
||||||
|
Yyq3xLVDG/Zs7LmgSAiEITxRFTR4qg7k
|
||||||
|
=r37a
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
1
data/backup/keys/home.openhab.key.vault
Normal file
1
data/backup/keys/home.openhab.key.vault
Normal file
|
@ -0,0 +1 @@
|
||||||
|
encrypt$gAAAAABhflKcIRszHtJHuBcgaWh7divgjgw72cKDiP7PPk7CQ9xpdSDw3phE7tpVBnaYSjYFcn0lxH5IN7YfgsgQnRFrH4N25-awLwxp6kVsL00Si9F4o8GUBvzobQGJtzEh0nuQ3zmGGfQSLZGKiXkFHLPmnc67Mqtz7zK7Qc5Lp0qqhMJ-2PLEwl5F6WxQU8TcNTlHDgIb23yS2GWfT3DrUvZjgOKkDvS--Huphyklksn3SR3cxHy1wSmlzJxV31t4Rh7YQyj1DcuBy2TIzLAhebtPJbiUZTFsFXDJULiHl1zi5X2jVIc17rpKW_9JMTeBEDZbebyqpOp3bo9zNv4RcC_XEIW7i2hCXNT8RksW5x45-E01jKQpiKgIcJoImcDQAanNh6_xEWEPWiJFVDulkMiJob5EvZjl1j79jOciahq8ycuePWyFAAtDZgpLm9u0JlzOLFL4NbvL8-MypBLpysXTohqDa3SYKlc2-UvsUJD8bagEYsy0Ay_nGQo961AqlWF7vPk2SdYXUjN657PxSbnczOuKv63BmFWEF9Bu8OFOzxIRs1ds7jvK3KChikO91VJMQxsZrSynFBwDm5zpYRsk-k1D2blf2g1yaThd2fijYCe1Lico_nTlyf-dpSrN5szlKW5V
|
1
data/backup/keys/home.openhab.pub
Normal file
1
data/backup/keys/home.openhab.pub
Normal file
|
@ -0,0 +1 @@
|
||||||
|
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKYyrgpO2tCRTP+eEFD127OlRIATw7BxaSgYMnyYAbMS kunsi@kunsi-t470.kunbox.net
|
|
@ -1,6 +1,9 @@
|
||||||
nodes['home.openhab'] = {
|
nodes['home.openhab'] = {
|
||||||
'hostname': '172.19.138.21',
|
'hostname': '172.19.138.21',
|
||||||
'bundles': set(),
|
'bundles': {
|
||||||
|
'nginx',
|
||||||
|
'openhab',
|
||||||
|
},
|
||||||
'groups': {
|
'groups': {
|
||||||
'debian-bullseye',
|
'debian-bullseye',
|
||||||
},
|
},
|
||||||
|
@ -13,8 +16,16 @@ nodes['home.openhab'] = {
|
||||||
'gateway4': '172.19.138.1',
|
'gateway4': '172.19.138.1',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
'backups': { # TODO remove this when running openhab
|
'nginx': {
|
||||||
'exclude_from_backups': True,
|
'vhosts': {
|
||||||
|
'openhab': {'ssl': '_.home.kunbox.net'},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'openhab': {
|
||||||
|
'domain': 'openhab.home.kunbox.net',
|
||||||
|
'java_opts': {
|
||||||
|
'user.timezone': 'Europe/Berlin',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
'vm': {
|
'vm': {
|
||||||
'cpu': 2,
|
'cpu': 2,
|
||||||
|
|
Loading…
Reference in a new issue