3 Commits dacf434427 ... affcb58e5b

Author SHA1 Message Date
  Michael Buesch affcb58e5b permissions: Remove db and post permissions from web server 2 weeks ago
  Michael Buesch f68f917f2a install: Add option to install Rust backd 2 weeks ago
  Michael Buesch ea714e3cae backd: Add systemd files 2 weeks ago

+ 20 - 0
cms-backd/cms-backd.service

@@ -0,0 +1,20 @@
+[Unit]
+Description=CMS backend daemon
+PartOf=cms-backd.socket
+Requires=cms-fsd.service
+Requires=cms-postd.service
+
+[Service]
+Type=notify
+ExecStart=/opt/cms/bin/cms-backd
+ExecReload=/bin/kill -HUP $MAINPID
+StandardOutput=journal
+StandardError=journal
+Restart=on-failure
+RestartSec=1
+User=cms-backd
+Group=cms-backd
+Nice=0
+
+[Install]
+WantedBy=multi-user.target

+ 14 - 0
cms-backd/cms-backd.socket

@@ -0,0 +1,14 @@
+[Unit]
+Description=CMS backend daemon socket
+Requires=cms-backd.service
+AssertPathExists=/run
+
+[Socket]
+ListenStream=/run/cms-backd.sock
+Accept=no
+SocketUser=cms-backd
+SocketGroup=cms-sock-back
+SocketMode=0660
+
+[Install]
+WantedBy=multi-user.target

+ 1 - 1
cmsbackpy/cms-backd.service

@@ -1,5 +1,5 @@
 [Unit]
-Description=CMS backend daemon
+Description=CMS backend daemon (Python)
 PartOf=cms-backd.socket
 Requires=cms-fsd.service
 Requires=cms-postd.service

+ 1 - 1
cmsbackpy/cms-backd.socket

@@ -1,5 +1,5 @@
 [Unit]
-Description=CMS backend daemon socket
+Description=CMS backend daemon socket (Python)
 Requires=cms-backd.service
 AssertPathExists=/run
 

+ 0 - 2
install-users.sh

@@ -81,8 +81,6 @@ sys_useradd -G cms-sock-post,cms-fs-x -g cms-postd cms-postd
 sys_useradd -G cms-sock-back,cms-sock-db,cms-sock-post -g cms-backd cms-backd
 
 # Add the communication socket to the web server process user.
-do_usermod -a -G cms-sock-db www-data #TODO: cms-sock-db shall be removed eventually.
-do_usermod -a -G cms-sock-post www-data #TODO: cms-sock-post shall be removed eventually.
 do_usermod -a -G cms-sock-back www-data
 
 # The git-user shall be able to give group permissions in db.

+ 27 - 1
install.sh

@@ -148,6 +148,27 @@ install_cgi()
         /opt/cms/libexec/cms-cgi/cms.cgi
 }
 
+install_backd()
+{
+    do_install \
+        -o root -g root -m 0755 \
+        "$basedir/target/release/cms-backd" \
+        /opt/cms/bin/
+
+    do_install \
+        -o root -g root -m 0644 \
+        "$basedir/cms-backd/cms-backd.service" \
+        /etc/systemd/system/
+
+    do_install \
+        -o root -g root -m 0644 \
+        "$basedir/cms-backd/cms-backd.socket" \
+        /etc/systemd/system/
+
+    do_systemctl enable cms-backd.service
+    do_systemctl enable cms-backd.socket
+}
+
 install_py()
 {
     do_install \
@@ -180,13 +201,18 @@ install_py()
     do_systemctl enable cms-backd.socket
 }
 
+python=1
+[ "$1" = "--no-python" -o "$1" = "-P" ] && python=0
+
+[ $python -eq 0 ] && info "Python backend disabled."
 entry_checks
 stop_services
 install_dirs
 install_fsd
 install_postd
 install_cgi
-install_py
+[ $python -ne 0 ] && install_py
+[ $python -eq 0 ] && install_backd
 start_services
 
 # vim: ts=4 sw=4 expandtab