install as service
This commit is contained in:
@@ -20,7 +20,7 @@ def default_config(base: Path | None = None) -> dict[str, Any]:
|
||||
base = (base or Path.cwd()).resolve()
|
||||
rrd = base / "rrd"
|
||||
return {
|
||||
"HOST": "0.0.0.0", "PORT": 5000, "URL_PREFIX": "", "RRD_FOLDER": rrd,
|
||||
"HOST": "0.0.0.0", "PORT": 5000, "THREADS": 4, "URL_PREFIX": "", "RRD_FOLDER": rrd,
|
||||
"LOG_FILE": rrd / "netatmo_service.log", "LOG_LEVEL": "INFO",
|
||||
"LOG_MAX_BYTES": 5242880, "LOG_BACKUP_COUNT": 5, "LOG_CONSOLE": True,
|
||||
"NETATMO_TOKEN_FILE": rrd / "netatmo_tokens.json",
|
||||
@@ -63,6 +63,7 @@ def load_config(filename: str | Path | None = None) -> dict[str, Any]:
|
||||
result.update({
|
||||
"HOST": str(server.get("host", result["HOST"])),
|
||||
"PORT": int(server.get("port", result["PORT"])),
|
||||
"THREADS": int(server.get("threads", result["THREADS"])),
|
||||
"URL_PREFIX": _prefix(server.get("url_prefix", result["URL_PREFIX"])),
|
||||
"GRAPH_WIDTH": int(graphs.get("width", result["GRAPH_WIDTH"])),
|
||||
"GRAPH_HEIGHT": int(graphs.get("height", result["GRAPH_HEIGHT"])),
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
|
||||
# run as root
|
||||
|
||||
useradd --system --home-dir /srv/service_netatmo --shell /usr/sbin/nologin netatmo
|
||||
install -d -o netatmo -g netatmo -m 0750 /var/lib/rrd
|
||||
|
||||
chown netatmo:netatmo /srv/service_netatmo/config.yaml
|
||||
chmod 0600 /srv/service_netatmo/config.yaml
|
||||
|
||||
# sudo -u netatmo python3 -m venv /srv/service_netatmo/.venv
|
||||
# sudo -u netatmo /srv/service_netatmo/.venv/bin/pip install \
|
||||
-r /srv/service_netatmo/requirements.txt
|
||||
|
||||
install -o root -g root -m 0644 \
|
||||
/srv/service_netatmo/deploy/netatmo.service \
|
||||
/etc/systemd/system/netatmo.service
|
||||
|
||||
systemctl daemon-reload
|
||||
systemctl enable --now netatmo.service
|
||||
systemctl status netatmo.service
|
||||
Reference in New Issue
Block a user