SPEC: run the %preun commands in worker package only on removal
PR#553 [1] introduced a change to the worker subpackage and replaced the systemd %preun RPM macro with a literal calls to `systemctl` due to missing functionality in systemd. However, the change omitted the fact, that the RPM macro executes commands only on package removal, not upgrade. As a result a local or remote worker which is running on the system while the osbuild-composer-worker package is updated, gets stopped. Fix the scriptlet and run the commands only on package removal. [1] https://github.com/osbuild/osbuild-composer/pull/553 Signed-off-by: Tomáš Hozza <thozza@redhat.com>
This commit is contained in:
parent
dc3c0d9725
commit
f24c6ad952
1 changed files with 3 additions and 2 deletions
|
|
@ -326,8 +326,9 @@ The worker for osbuild-composer
|
|||
%preun worker
|
||||
# systemd_preun uses systemctl disable --now which doesn't work well with template services.
|
||||
# See https://github.com/systemd/systemd/issues/15620
|
||||
# The following lines mimicks its behaviour by running two commands:
|
||||
if [ -d /run/systemd/system ]; then
|
||||
# The following lines mimicks its behaviour by running two commands.
|
||||
# The scriptlet is supposed to run only when the package is being removed.
|
||||
if [ $1 -eq 0 ] && [ -d /run/systemd/system ]; then
|
||||
# disable and stop all the worker services
|
||||
systemctl --no-reload disable osbuild-worker@.service osbuild-remote-worker@.service
|
||||
systemctl stop "osbuild-worker@*.service" "osbuild-remote-worker@*.service"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue