Support disabling apache wsgi socket rotation
Bug LP 1863232 introduced a new Apache configuration option called WSGISocketRotation which allows users to disable wsgi socket rotation. This patch makes this configurable with a new wsgi-socket-rotation config option that defaults to the Apache default and can optionally be set to False. Change-Id: I34258c46c839db1c70a3967b7e1ee6889db8a7fd Closes-Bug: #2021550
This commit is contained in:
parent
e9dbe36914
commit
f7ae07bcbf
|
@ -1665,6 +1665,9 @@ class WSGIWorkerConfigContext(WorkerConfigContext):
|
|||
|
||||
def __call__(self):
|
||||
total_processes = _calculate_workers()
|
||||
enable_wsgi_socket_rotation = config('wsgi-socket-rotation')
|
||||
if enable_wsgi_socket_rotation is None:
|
||||
enable_wsgi_socket_rotation = True
|
||||
ctxt = {
|
||||
"service_name": self.service_name,
|
||||
"user": self.user,
|
||||
|
@ -1678,6 +1681,7 @@ class WSGIWorkerConfigContext(WorkerConfigContext):
|
|||
"public_processes": int(math.ceil(self.public_process_weight *
|
||||
total_processes)),
|
||||
"threads": 1,
|
||||
"wsgi_socket_rotation": enable_wsgi_socket_rotation,
|
||||
}
|
||||
return ctxt
|
||||
|
||||
|
|
|
@ -12,6 +12,12 @@ Listen {{ admin_port }}
|
|||
Listen {{ public_port }}
|
||||
{% endif -%}
|
||||
|
||||
{% if wsgi_socket_rotation -%}
|
||||
WSGISocketRotation On
|
||||
{% else -%}
|
||||
WSGISocketRotation Off
|
||||
{% endif -%}
|
||||
|
||||
{% if port -%}
|
||||
<VirtualHost *:{{ port }}>
|
||||
WSGIDaemonProcess {{ service_name }} processes={{ processes }} threads={{ threads }} user={{ user }} group={{ group }} \
|
||||
|
|
|
@ -12,6 +12,12 @@ Listen {{ admin_port }}
|
|||
Listen {{ public_port }}
|
||||
{% endif -%}
|
||||
|
||||
{% if wsgi_socket_rotation -%}
|
||||
WSGISocketRotation On
|
||||
{% else -%}
|
||||
WSGISocketRotation Off
|
||||
{% endif -%}
|
||||
|
||||
{% if port -%}
|
||||
<VirtualHost *:{{ port }}>
|
||||
WSGIDaemonProcess {{ service_name }} processes={{ processes }} threads={{ threads }} user={{ user }} group={{ group }} \
|
||||
|
|
|
@ -52,7 +52,7 @@ def _snap_exec(commands):
|
|||
:param commands: List commands
|
||||
:return: Integer exit code
|
||||
"""
|
||||
assert type(commands) == list
|
||||
assert type(commands) is list
|
||||
|
||||
retry_count = 0
|
||||
return_code = None
|
||||
|
|
|
@ -790,3 +790,11 @@ options:
|
|||
allowed and letting the request fail, Negative number: Allows
|
||||
unlimited number of local devices, Positive number: Allows only
|
||||
these many number of local devices.
|
||||
wsgi-socket-rotation:
|
||||
type: boolean
|
||||
default: True
|
||||
description: |
|
||||
Allow users to disable Apache wsgi socket rotation. If not configured,
|
||||
this option sets True as the default value, which is consistent with the
|
||||
default value 'WSGISocketRotation On' in Apache. This option should be
|
||||
used with caution. Please read the Apache doc page for more information.
|
||||
|
|
Loading…
Reference in New Issue