add parameter to overwrite/add wsgi process options

Add parameter to apache_wsgi to allow overwrite
and/or add additional wsgi process options.

This possibility was added to openstacklib
with Change-Id: I41914ce3361988d5db1695f09d21209772fdf548

Change-Id: I1a2f1a28200d362b7918a458e8f885873062e98b
This commit is contained in:
Benedikt Trefzer 2017-09-18 10:51:30 +02:00
parent b6ee08938f
commit 560b82e9ae
3 changed files with 88 additions and 67 deletions

View File

@ -72,6 +72,14 @@
# (Optional) apache::vhost ssl parameters.
# Default to apache::vhost 'ssl_*' defaults.
#
# [*custom_wsgi_process_options*]
# (optional) gives you the oportunity to add custom process options or to
# overwrite the default options for the WSGI main process.
# eg. to use a virtual python environment for the WSGI process
# you could set it to:
# { python-path => '/my/python/virtualenv' }
# Defaults to {}
#
# === Dependencies:
#
# requires Class['apache'] & Class['ceilometer']
@ -99,6 +107,7 @@ class ceilometer::wsgi::apache (
$wsgi_process_display_name = undef,
$threads = $::os_workers,
$priority = '10',
$custom_wsgi_process_options = {},
) {
include ::ceilometer::deps
@ -137,5 +146,6 @@ class ceilometer::wsgi::apache (
wsgi_script_dir => $::ceilometer::params::ceilometer_wsgi_script_path,
wsgi_script_file => 'app',
wsgi_script_source => $::ceilometer::params::ceilometer_wsgi_script_source,
custom_wsgi_process_options => $custom_wsgi_process_options,
}
}

View File

@ -0,0 +1,4 @@
---
features:
- Add parameter to apacher_wsgi to allow overwrite
and/or add additional wsgi process options.

View File

@ -26,6 +26,7 @@ describe 'ceilometer::wsgi::apache' do
:wsgi_script_dir => platform_params[:wsgi_script_path],
:wsgi_script_file => 'app',
:wsgi_script_source => platform_params[:wsgi_script_source],
:custom_wsgi_process_options => {},
)}
end
@ -38,6 +39,9 @@ describe 'ceilometer::wsgi::apache' do
:ssl => false,
:wsgi_process_display_name => 'ceilometer',
:workers => 37,
:custom_wsgi_process_options => {
'python_path' => '/my/python/path',
},
}
end
it { is_expected.to contain_class('ceilometer::deps') }
@ -61,6 +65,9 @@ describe 'ceilometer::wsgi::apache' do
:wsgi_script_dir => platform_params[:wsgi_script_path],
:wsgi_script_file => 'app',
:wsgi_script_source => platform_params[:wsgi_script_source],
:custom_wsgi_process_options => {
'python_path' => '/my/python/path',
},
)}
end
end