From: Mathieu Baudier Date: Fri, 28 Oct 2022 08:31:51 +0000 (+0200) Subject: Introduce systemd user service X-Git-Tag: v2.3.11~65 X-Git-Url: https://git.argeo.org/?p=lgpl%2Fargeo-commons.git;a=commitdiff_plain;h=6211e86ec9bd6dfd4445fed12c1baa0e98314824 Introduce systemd user service --- diff --git a/sdk/deploy/argeo-init/etc/argeo.user.d/jvm.args b/sdk/deploy/argeo-init/etc/argeo.user.d/jvm.args new file mode 100644 index 000000000..e69de29bb diff --git a/sdk/deploy/argeo-init/usr/lib/systemd/system/argeo@.service b/sdk/deploy/argeo-init/usr/lib/systemd/system/argeo@.service index 8b7f969ec..91d77b608 100644 --- a/sdk/deploy/argeo-init/usr/lib/systemd/system/argeo@.service +++ b/sdk/deploy/argeo-init/usr/lib/systemd/system/argeo@.service @@ -11,18 +11,18 @@ ConfigurationDirectory=argeo.d/%I CacheDirectory=argeo.d/%I WorkingDirectory=/var/lib/argeo.d/%I -ExecStart=/usr/lib/jvm/java-17-openjdk-amd64/bin/java \ +ExecStart=java \ -Dosgi.configuration.cascaded=true \ -Dosgi.sharedConfiguration.area=/etc/argeo.d/%I/ \ -Dosgi.sharedConfiguration.area.readOnly=true \ --Dosgi.configuration.area=/var/lib/argeo.d/%I/state/ \ --Dosgi.instance.area=/var/lib/argeo.d/%I/data/ \ --Dargeo.node.repo.indexesBase=/var/cache/argeo.d/%I/indexes \ +-Dosgi.configuration.area=${STATE_DIRECTORY}/state/ \ +-Dosgi.instance.area=${STATE_DIRECTORY}/data/ \ +-Dargeo.node.repo.indexesBase=${CACHE_DIRECTORY}/indexes \ -Declipse.ignoreApp=true \ -Dosgi.noShutdown=true \ -Dorg.eclipse.equinox.http.jetty.autostart=false \ @/etc/argeo.d/jvm.args \ -@/etc/argeo.d/%I/jvm.args \ +@${CONFIGURATION_DIRECTORY}/jvm.args \ @/usr/share/argeo/jvm.args # Exit codes of the JVM when SIGTERM or SIGINT have been caught: SuccessExitStatus=143 130 diff --git a/sdk/deploy/argeo-init/usr/lib/systemd/user/argeo@.service b/sdk/deploy/argeo-init/usr/lib/systemd/user/argeo@.service new file mode 100644 index 000000000..345685a97 --- /dev/null +++ b/sdk/deploy/argeo-init/usr/lib/systemd/user/argeo@.service @@ -0,0 +1,30 @@ +[Unit] +Description=Argeo user node %I + +[Service] +Type=simple +StateDirectory=argeo.d/%I +LogsDirectory=argeo.d/%I +ConfigurationDirectory=argeo.d/%I +CacheDirectory=argeo.d/%I +#WorkingDirectory= + +ExecStart=java \ +-Dosgi.configuration.cascaded=true \ +-Dosgi.sharedConfiguration.area=/etc/argeo.user.d/%I/ \ +-Dosgi.sharedConfiguration.area.readOnly=true \ +-Dosgi.configuration.area=${STATE_DIRECTORY}/state/ \ +-Dosgi.instance.area=${STATE_DIRECTORY}/data/ \ +-Dargeo.node.repo.indexesBase=${CACHE_DIRECTORY}/indexes \ +-Declipse.ignoreApp=true \ +-Dosgi.noShutdown=true \ +-Dorg.eclipse.equinox.http.jetty.autostart=false \ +-Djava.library.path=/usr/lib/a2/swt/rcp/org.argeo.tp.swt/ \ +@/etc/argeo.user.d/jvm.args \ +@/etc/argeo.user.d/%I/jvm.args \ +@/usr/share/argeo/jvm.args +# Exit codes of the JVM when SIGTERM or SIGINT have been caught: +SuccessExitStatus=143 130 + +[Install] +WantedBy=multi-user.target