mirror of
https://github.com/deuill/coreos-home-server.git
synced 2024-09-21 21:50:46 +00:00
Alex Palaistras
18f067f50e
Components being registered typically require a full restart of the service, as a simple configuration reload does not handle on-the-fly activation of any new components or modules. Fortunately, a separate method exists for doing so, and our `prosody-component-register` will now use this method in registering components without a full restart of the underlying service.
24 lines
1.1 KiB
Desktop File
24 lines
1.1 KiB
Desktop File
[Unit]
|
|
Description=Prosody XMPP Component for %I
|
|
Wants=prosody.service
|
|
After=prosody.service
|
|
|
|
[Service]
|
|
Type=oneshot
|
|
RemainAfterExit=true
|
|
SyslogIdentifier=%N
|
|
Environment=PROSODY_COMPONENT_NAME=%i
|
|
EnvironmentFile=-%E/coreos-home-server/%i/%i.env
|
|
ExecStartPre=/bin/install --mode 0700 --directory /tmp/%N
|
|
ExecStartPre=/bin/sh -c "envsubst < %E/coreos-home-server/prosody/service/component.cfg.lua.template > /tmp/%N/component.cfg.lua"
|
|
ExecStartPre=/bin/podman cp --archive=false /tmp/%N/component.cfg.lua prosody:/etc/prosody/conf.d/%i.cfg.lua
|
|
ExecStartPre=/bin/podman exec prosody sh -c "echo 'config:reload()' | nc -q 1 -w 10 127.0.0.1 5582"
|
|
ExecStart=/bin/podman exec prosody sh -c "echo 'host:activate(\"${PROSODY_COMPONENT_NAME}\")' | nc -q 1 -w 10 127.0.0.1 5582"
|
|
ExecStartPost=/bin/rm -Rf /tmp/%N
|
|
ExecStop=/bin/podman exec prosody sh -c "echo 'host:deactivate(\"${PROSODY_COMPONENT_NAME}\")' | nc -q 1 -w 10 127.0.0.1 5582"
|
|
ExecStopPost=/bin/podman exec --user=root prosody rm -f /etc/prosody/conf.d/%i.cfg.lua
|
|
ExecStopPost=/bin/podman exec prosody sh -c "echo 'config:reload()' | nc -q 1 -w 10 127.0.0.1 5582"
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|