Hi,
I have a 2 template units: 1 for a service and 1 for a socket. Each
instance is a version of my web application.
After a successful deploy, I stop and disable the old version and I
enable the new one:
systemctl start belleshop@0.2.socket
# Test that everything is fine
systemctl enable belleshop@0.2.socket
systemctl stop belleshop@0.1.socket
systemctl stop belleshop@0.1.service
systemctl disable belleshop@0.1.socket
I've done that for a few versions now, and it seemed to work OK. There
is a little problem though. The old versions are still loaded:
$ systemctl --no-legend --all list-units belleshop@*
belleshop@0.110.service loaded active running Belleshop server
belleshop@0.34.service loaded inactive deadBelleshop server
belleshop@0.36.service loaded inactive deadBelleshop server
belleshop@0.37.service loaded inactive deadBelleshop server
[...]
belleshop@0.110.socket loaded active running Belleshop socket
belleshop@0.34.socket loaded inactive deadBelleshop socket
belleshop@0.36.socket loaded inactive deadBelleshop socket
belleshop@0.37.socket loaded inactive deadBelleshop socket
[...]
Is there any way I can unload these old versions?
Here are my unit files:
belleshop@.service:
[Unit]
Description=Belleshop server
Requires=belleshop@%i.socket
After=network.target
[Service]
User=belleshop
Group=belleshop
ExecStart=/opt/belleshop/bin/belleshop-%i.pyz server --bind
unix:/run/belleshop/belleshop-%i.sock
ConfigurationDirectory=opt/belleshop/
StateDirectory=belleshop
CacheDirectory=belleshop
RuntimeDirectory=belleshop
Environment="SHIV_ROOT=/var/cache/belleshop"
RuntimeDirectoryPreserve=yes
StandardOutput=journal
StandardError=inherit
[Install]
WantedBy=multi-user.target
belleshop@.socket:
[Unit]
Description=Belleshop socket
[Socket]
ListenStream=/run/belleshop/belleshop-%i.sock
[Install]
WantedBy=sockets.target
Daniel
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel