puppet: ‘supervisorctl stop all’ before restarting Supervisor.

This fixes a failure of the 3.4 upgrade test running on Ubuntu 20.04
with Supervisor 4.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
(cherry picked from commit a7e6cb7705)
This commit is contained in:
Anders Kaseorg
2022-04-26 14:51:18 -07:00
committed by Tim Abbott
parent c34110f88c
commit 6736b35f5f
2 changed files with 14 additions and 5 deletions

View File

@@ -8,11 +8,19 @@ class zulip::common {
$supervisor_system_conf_dir = '/etc/supervisor/conf.d'
$supervisor_conf_file = '/etc/supervisor/supervisord.conf'
$supervisor_service = 'supervisor'
$supervisor_start = '/etc/init.d/supervisor start'
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=877086
# "restart" is actually "stop" under sysvinit
$supervisor_reload = '/etc/init.d/supervisor restart && (/etc/init.d/supervisor start || /bin/true) && /etc/init.d/supervisor status'
$supervisor_status = '/etc/init.d/supervisor status'
$supervisor_start = '/usr/sbin/service supervisor start'
$supervisor_reload = @(EOT)
# The init script's timeout waiting for supervisor is shorter
# than supervisor's timeout waiting for its programs, so we need
# to ask supervisor to stop its programs first.
supervisorctl stop all &&
service supervisor restart &&
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=877086
# "restart" is actually "stop" under sysvinit
{ service supervisor start || true; } &&
service supervisor status
| EOT
$supervisor_status = '/usr/sbin/service supervisor status'
}
'RedHat': {
$nagios_plugins = 'nagios-plugins'

View File

@@ -91,6 +91,7 @@ class zulip::supervisor {
}
exec { 'supervisor-restart':
refreshonly => true,
provider => shell,
command => $zulip::common::supervisor_reload,
require => Service[$supervisor_service],
}