From 0d76033a13244461a553f35f2fa03b01c45703c5 Mon Sep 17 00:00:00 2001 From: jerry <34092770+jerko-culina@users.noreply.github.com> Date: Wed, 28 Jun 2023 19:36:34 +0200 Subject: [PATCH] Update systemd.rb, add explicit sidekiq_system_ctl_user Trying to overide `systemctl --user` to use system by setting `service_unit_user` to `:system` but seems like it does not work. I checked on capistrano-puma, and they explicitly called it `puma_systemctl_user` so thought about having same here. --- lib/capistrano/sidekiq/systemd.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/capistrano/sidekiq/systemd.rb b/lib/capistrano/sidekiq/systemd.rb index 9ac0008..b59d4b1 100644 --- a/lib/capistrano/sidekiq/systemd.rb +++ b/lib/capistrano/sidekiq/systemd.rb @@ -11,6 +11,7 @@ def set_defaults set_if_empty :service_unit_user, :user set_if_empty :systemctl_user, fetch(:service_unit_user, :user) == :user + set_if_empty :sidekiq_systemctl_user, -> { fetch(:service_unit_user) } set_if_empty :sidekiq_service_unit_name, -> { "#{fetch(:application)}_sidekiq_#{fetch(:stage)}" } set_if_empty :sidekiq_lingering_user, -> { fetch(:lingering_user, fetch(:user)) } @@ -24,7 +25,7 @@ def set_defaults def systemd_command(*args) command = [fetch(:systemctl_bin)] - unless fetch(:service_unit_user) == :system + unless fetch(:sidekiq_systemctl_user) == :system command << "--user" end @@ -32,7 +33,7 @@ def systemd_command(*args) end def sudo_if_needed(*command) - if fetch(:service_unit_user) == :system + if fetch(:sidekiq_systemctl_user) == :system backend.sudo command.map(&:to_s).join(" ") else backend.execute(*command)