add parameter to overwrite/add wsgi process options
Add two parameters to apache wsgi to allow overwrite and/or add additional wsgi process options. Change-Id: I41914ce3361988d5db1695f09d21209772fdf548
This commit is contained in:
parent
f23007de76
commit
8832df01b0
@ -134,6 +134,14 @@
|
|||||||
# WSGIChunkedRequest option in the vhost.
|
# WSGIChunkedRequest option in the vhost.
|
||||||
# Defaults to undef
|
# Defaults to undef
|
||||||
#
|
#
|
||||||
|
# [*custom_wsgi_process_options*]
|
||||||
|
# (optional) gives you the oportunity to add custom process options or to
|
||||||
|
# overwrite the default options for the WSGI process.
|
||||||
|
# eg. to use a virtual python environment for the WSGI process
|
||||||
|
# you could set it to:
|
||||||
|
# { python-path => '/my/python/virtualenv' }
|
||||||
|
# Defaults to {}
|
||||||
|
#
|
||||||
# [*vhost_custom_fragment*]
|
# [*vhost_custom_fragment*]
|
||||||
# (optional) Passes a string of custom configuration
|
# (optional) Passes a string of custom configuration
|
||||||
# directives to be placed at the end of the vhost configuration.
|
# directives to be placed at the end of the vhost configuration.
|
||||||
@ -147,35 +155,36 @@
|
|||||||
# Defaults to undef.
|
# Defaults to undef.
|
||||||
#
|
#
|
||||||
define openstacklib::wsgi::apache (
|
define openstacklib::wsgi::apache (
|
||||||
$service_name = $name,
|
$service_name = $name,
|
||||||
$bind_host = undef,
|
$bind_host = undef,
|
||||||
$bind_port = undef,
|
$bind_port = undef,
|
||||||
$group = undef,
|
$group = undef,
|
||||||
$path = '/',
|
$path = '/',
|
||||||
$priority = '10',
|
$priority = '10',
|
||||||
$servername = $::fqdn,
|
$servername = $::fqdn,
|
||||||
$ssl = false,
|
$ssl = false,
|
||||||
$ssl_ca = undef,
|
$ssl_ca = undef,
|
||||||
$ssl_cert = undef,
|
$ssl_cert = undef,
|
||||||
$ssl_certs_dir = undef,
|
$ssl_certs_dir = undef,
|
||||||
$ssl_chain = undef,
|
$ssl_chain = undef,
|
||||||
$ssl_crl = undef,
|
$ssl_crl = undef,
|
||||||
$ssl_crl_path = undef,
|
$ssl_crl_path = undef,
|
||||||
$ssl_key = undef,
|
$ssl_key = undef,
|
||||||
$threads = $::os_workers,
|
$threads = $::os_workers,
|
||||||
$user = undef,
|
$user = undef,
|
||||||
$workers = 1,
|
$workers = 1,
|
||||||
$wsgi_daemon_process = $name,
|
$wsgi_daemon_process = $name,
|
||||||
$wsgi_process_display_name = $name,
|
$wsgi_process_display_name = $name,
|
||||||
$wsgi_process_group = $name,
|
$wsgi_process_group = $name,
|
||||||
$wsgi_script_dir = undef,
|
$wsgi_script_dir = undef,
|
||||||
$wsgi_script_file = undef,
|
$wsgi_script_file = undef,
|
||||||
$wsgi_script_source = undef,
|
$wsgi_script_source = undef,
|
||||||
$wsgi_application_group = '%{GLOBAL}',
|
$wsgi_application_group = '%{GLOBAL}',
|
||||||
$wsgi_pass_authorization = undef,
|
$wsgi_pass_authorization = undef,
|
||||||
$wsgi_chunked_request = undef,
|
$wsgi_chunked_request = undef,
|
||||||
$vhost_custom_fragment = undef,
|
$custom_wsgi_process_options = {},
|
||||||
$allow_encoded_slashes = undef,
|
$vhost_custom_fragment = undef,
|
||||||
|
$allow_encoded_slashes = undef,
|
||||||
) {
|
) {
|
||||||
|
|
||||||
include ::apache
|
include ::apache
|
||||||
@ -205,13 +214,16 @@ define openstacklib::wsgi::apache (
|
|||||||
mode => '0644',
|
mode => '0644',
|
||||||
}
|
}
|
||||||
|
|
||||||
$wsgi_daemon_process_options = {
|
$wsgi_daemon_process_options = merge (
|
||||||
user => $user,
|
{
|
||||||
group => $group,
|
user => $user,
|
||||||
processes => $workers,
|
group => $group,
|
||||||
threads => $threads,
|
processes => $workers,
|
||||||
display-name => $wsgi_process_display_name,
|
threads => $threads,
|
||||||
}
|
display-name => $wsgi_process_display_name,
|
||||||
|
},
|
||||||
|
$custom_wsgi_process_options,
|
||||||
|
)
|
||||||
$wsgi_script_aliases = hash([$path_real,"${wsgi_script_dir}/${wsgi_script_file}"])
|
$wsgi_script_aliases = hash([$path_real,"${wsgi_script_dir}/${wsgi_script_file}"])
|
||||||
|
|
||||||
::apache::vhost { $service_name:
|
::apache::vhost { $service_name:
|
||||||
|
@ -0,0 +1,4 @@
|
|||||||
|
---
|
||||||
|
features:
|
||||||
|
- Add two parameters to apache wsgi to allow overwrite
|
||||||
|
and/or add additional wsgi process options.
|
@ -132,6 +132,34 @@ describe 'openstacklib::wsgi::apache' do
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe 'when wsgi_daemon_process_options are overriden' do
|
||||||
|
let :params do
|
||||||
|
{
|
||||||
|
:bind_port => 5000,
|
||||||
|
:group => 'keystone',
|
||||||
|
:ssl => true,
|
||||||
|
:user => 'keystone',
|
||||||
|
:wsgi_script_dir => '/var/www/cgi-bin/keystone',
|
||||||
|
:wsgi_script_file => 'main',
|
||||||
|
:wsgi_script_source => '/usr/share/keystone/keystone.wsgi',
|
||||||
|
:custom_wsgi_process_options => {
|
||||||
|
'user' => 'someotheruser',
|
||||||
|
'group' => 'someothergroup',
|
||||||
|
'python_path' => '/my/python/admin/path',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end
|
||||||
|
it { is_expected.to contain_apache__vhost('keystone_wsgi').with(
|
||||||
|
'wsgi_daemon_process_options' => {
|
||||||
|
'user' => 'someotheruser',
|
||||||
|
'group' => 'someothergroup',
|
||||||
|
'processes' => 1,
|
||||||
|
'threads' => global_facts[:os_workers],
|
||||||
|
'display-name' => 'keystone_wsgi',
|
||||||
|
'python_path' => '/my/python/admin/path',
|
||||||
|
},
|
||||||
|
)}
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
on_supported_os({
|
on_supported_os({
|
||||||
|
Loading…
x
Reference in New Issue
Block a user