systemd user space (systemctl --user) unit file
authorMathieu Baudier <mbaudier@argeo.org>
Tue, 28 Apr 2020 14:08:20 +0000 (16:08 +0200)
committerMathieu Baudier <mbaudier@argeo.org>
Tue, 28 Apr 2020 14:08:20 +0000 (16:08 +0200)
dist/argeo-node/pom.xml
dist/argeo-node/rpm/usr/lib/systemd/user/argeo@.service [new file with mode: 0644]
dist/argeo-node/rpm/usr/sbin/argeoctl

index 52ffd5a5344320efdff84e15fcaf84e4a7f212c2..bedaa364b45a85467bef1f90bdfae435fcfa6e52 100644 (file)
                                                                                                </source>
                                                                                        </sources>
                                                                                </mapping>
+                                                                               <mapping>
+                                                                                       <directory>/usr/lib/systemd/user</directory>
+                                                                                       <username>root</username>
+                                                                                       <groupname>root</groupname>
+                                                                                       <filemode>644</filemode>
+                                                                                       <directoryIncluded>false</directoryIncluded>
+                                                                                       <sources>
+                                                                                               <source>
+                                                                                                       <location>rpm/usr/lib/systemd/user</location>
+                                                                                                       <includes>
+                                                                                                               <include>*.service</include>
+                                                                                                       </includes>
+                                                                                               </source>
+                                                                                       </sources>
+                                                                               </mapping>
                                                                                <mapping>
                                                                                        <directory>/usr/sbin</directory>
                                                                                        <username>root</username>
diff --git a/dist/argeo-node/rpm/usr/lib/systemd/user/argeo@.service b/dist/argeo-node/rpm/usr/lib/systemd/user/argeo@.service
new file mode 100644 (file)
index 0000000..27956e1
--- /dev/null
@@ -0,0 +1,12 @@
+[Unit]
+Description=Argeo Node %I
+
+[Service]
+Type=simple
+PIDFile=/var/run/user/%U/%i.pid
+ExecStart=/usr/sbin/argeoctl start %I
+ExecReload=/usr/sbin/argeoctl reload %I
+SuccessExitStatus=143
+StateDirectory=argeo.d/%I
+LogsDirectory=argeo.d/%I
+ConfigurationDirectory=argeo.d/%I
index 727ef27f4fbeac9d763062c19c8c2394e6b9cec7..67b08ebcd438fd2a0bee9e057789d6a5d93481c2 100755 (executable)
@@ -9,13 +9,13 @@ else
 # Instance
 INSTANCE=$2
        if [ -z "$STATE_DIRECTORY" ]; then
-       INSTANCE_DIR=/var/lib/$APP.d/$INSTANCE
+       INSTANCE_DIR=$HOME/.local/share/$APP.d/$INSTANCE
        else
        # systemd StateDirectory=
        INSTANCE_DIR=$STATE_DIRECTORY
        fi
        if [ -z "$CONFIGURATION_DIRECTORY" ]; then
-       CONF_DIR=/etc/$APP.d/$INSTANCE
+       CONF_DIR=$HOME/.config/$APP.d/$INSTANCE
        else
        # systemd ConfigurationDirectory=
        CONF_DIR=$CONFIGURATION_DIRECTORY