From 4ce41551ee86498c654258df6ec8f5dd5a3681ca Mon Sep 17 00:00:00 2001
From: David Trattnig <david.trattnig@o94.at>
Date: Wed, 9 Sep 2020 19:41:19 +0200
Subject: [PATCH] First implementation of separated unit files. #21

---
 configuration/systemd/aura-engine-core.service | 17 +++++++++++++++++
 configuration/systemd/aura-engine-lqs.service  | 17 +++++++++++++++++
 configuration/systemd/aura-engine-lqs.socket   |  6 ++++++
 docs/installation-production.md                |  4 ++++
 4 files changed, 44 insertions(+)
 create mode 100644 configuration/systemd/aura-engine-core.service
 create mode 100644 configuration/systemd/aura-engine-lqs.service
 create mode 100644 configuration/systemd/aura-engine-lqs.socket

diff --git a/configuration/systemd/aura-engine-core.service b/configuration/systemd/aura-engine-core.service
new file mode 100644
index 00000000..c98925db
--- /dev/null
+++ b/configuration/systemd/aura-engine-core.service
@@ -0,0 +1,17 @@
+[Unit]
+Description=Aura Engine - Playout Server
+After=network.target
+Documentation=https://gitlab.servus.at/aura/engine
+Requires=aura-engine-lqs.socket
+
+[Service]
+Type=simple
+User=engineuser
+WorkingDirectory=/opt/aura/engine
+ExecStart=/opt/aura/engine/run.sh core
+ExecStop=/opt/aura/engine/guru.py --shutdown --quiet
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
+Alias=aura-engine-core.service
\ No newline at end of file
diff --git a/configuration/systemd/aura-engine-lqs.service b/configuration/systemd/aura-engine-lqs.service
new file mode 100644
index 00000000..65bb4bf7
--- /dev/null
+++ b/configuration/systemd/aura-engine-lqs.service
@@ -0,0 +1,17 @@
+[Unit]
+Description=Aura Engine - Liquidsoap
+After=network.target
+Documentation=https://gitlab.servus.at/aura/engine
+;StandardInput=socket
+
+[Service]
+Type=simple
+User=engineuser
+WorkingDirectory=/opt/aura/engine
+ExecStart=/opt/aura/engine/run.sh lqs
+Restart=always
+
+[Install]
+; WantedBy=multi-user.target
+WantedBy=sockets.target
+Alias=aura-engine-lqs.service
diff --git a/configuration/systemd/aura-engine-lqs.socket b/configuration/systemd/aura-engine-lqs.socket
new file mode 100644
index 00000000..cffb0925
--- /dev/null
+++ b/configuration/systemd/aura-engine-lqs.socket
@@ -0,0 +1,6 @@
+[Socket]
+ListenStream=/opt/aura/engine/modules/liquidsoap/engine.sock
+Accept=false
+
+[Install]
+WantedBy=sockets.target
\ No newline at end of file
diff --git a/docs/installation-production.md b/docs/installation-production.md
index 673700a3..1b86cc29 100644
--- a/docs/installation-production.md
+++ b/docs/installation-production.md
@@ -229,6 +229,10 @@ Copy the unit file `/opt/aura/engine/configuration/systemd/aura-engine.service`
 This unit file starts engine-core and engine-liquidsoap within one command. Here Liquidsoap is started as
 as subprocess.
 
+> Please note not to use any other unit files in that directory yet. They are work in progress.
+
+Now you'll need to reload the Systemd unit files
+
 ```shell
 sudo systemctl daemon-reload
 ```
-- 
GitLab