From 0380311a9d6a60a1a3db92c906bf3a782a550221 Mon Sep 17 00:00:00 2001 From: Sven Sager Date: Sat, 7 Oct 2023 17:15:12 +0200 Subject: [PATCH] feat: Add systemd file and data to integrate the app as a daemon --- data/etc/default/revpi-middleware | 8 ++++++++ data/etc/logrotate/revpi-middleware | 14 ++++++++++++++ data/systemd/before_253/revpi-middleware.service | 13 +++++++++++++ data/systemd/from_253/revpi-middleware.service | 12 ++++++++++++ 4 files changed, 47 insertions(+) create mode 100644 data/etc/default/revpi-middleware create mode 100644 data/etc/logrotate/revpi-middleware create mode 100644 data/systemd/before_253/revpi-middleware.service create mode 100644 data/systemd/from_253/revpi-middleware.service diff --git a/data/etc/default/revpi-middleware b/data/etc/default/revpi-middleware new file mode 100644 index 0000000..d60ad28 --- /dev/null +++ b/data/etc/default/revpi-middleware @@ -0,0 +1,8 @@ +# Additional options that are passed to revpi-middleware. +# add '-f /var/log/revpi-middleware.log' to write logs to own log file +# add '-v' or '-vv' for verbose logging + +DAEMON_OPTS="" + +# In addition to journalctl, use your own additional log file +# DAEMON_OPTS="-f /var/log/revpi-middleware.log" diff --git a/data/etc/logrotate/revpi-middleware b/data/etc/logrotate/revpi-middleware new file mode 100644 index 0000000..4954b73 --- /dev/null +++ b/data/etc/logrotate/revpi-middleware @@ -0,0 +1,14 @@ +/var/log/revpi-middleware.log +{ + rotate 6 + weekly + maxsize 1M + compress + delaycompress + missingok + notifempty + sharedscripts + postrotate + systemctl kill --signal=SIGUSR1 revpi-middleware > /dev/null 2>&1 || true + endscript +} diff --git a/data/systemd/before_253/revpi-middleware.service b/data/systemd/before_253/revpi-middleware.service new file mode 100644 index 0000000..18fd9f0 --- /dev/null +++ b/data/systemd/before_253/revpi-middleware.service @@ -0,0 +1,13 @@ +[Unit] +Description=Middleware with D-Bus interface for Revolution Pi +After=network.target + +[Service] +EnvironmentFile=-/etc/default/revpi-middleware +Type=notify +NotifyAccess=all +ExecStart=/usr/sbin/revpi-middleware $DAEMON_OPTS +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/data/systemd/from_253/revpi-middleware.service b/data/systemd/from_253/revpi-middleware.service new file mode 100644 index 0000000..0d77a42 --- /dev/null +++ b/data/systemd/from_253/revpi-middleware.service @@ -0,0 +1,12 @@ +[Unit] +Description=Middleware with D-Bus interface for Revolution Pi +After=network.target + +[Service] +EnvironmentFile=-/etc/default/revpi-middleware +Type=notify-reload +NotifyAccess=all +ExecStart=/usr/sbin/revpi-middleware $DAEMON_OPTS + +[Install] +WantedBy=multi-user.target