Allow keystone to be set up to use apache mod_wsgi as the server instead of a standalone eventlet service. There is a new keystone class parameter: service_name. The default is 'keystone', which will set up the standalone eventlet service. If 'httpd' is used, the keystone class will skip creating the keystone service, which also means no 'openstack-keystone' service. The class 'keystone::wsgi::apache' is then used to configure apache mod_wsgi to serve keystone. Had to remove the File resource default in the keystone class. When using wsgi::apache, the apache class and other classes are included. Since puppet uses dynamic scoping, this overrides the file resources in those classes as well. keystone now explicitly sets all of the parameters in files/directory resources. Change-Id: Ib05ac81381e169845b44b2ef7cb810a4d5db17de Closes-Bug: #1348728
37 lines
1.4 KiB
Puppet
37 lines
1.4 KiB
Puppet
#
|
|
# This class contains the platform differences for keystone
|
|
#
|
|
class keystone::params {
|
|
$client_package_name = 'python-keystone'
|
|
|
|
case $::osfamily {
|
|
'Debian': {
|
|
$package_name = 'keystone'
|
|
$service_name = 'keystone'
|
|
$keystone_wsgi_script_path = '/usr/lib/cgi-bin/keystone'
|
|
$python_memcache_package_name = 'python-memcache'
|
|
case $::operatingsystem {
|
|
'Debian': {
|
|
$service_provider = undef
|
|
$keystone_wsgi_script_source = '/usr/share/keystone/wsgi.py'
|
|
}
|
|
default: {
|
|
# NOTE: Ubuntu does not currently provide the keystone wsgi script in the
|
|
# keystone packages. When Ubuntu does provide the script, change this
|
|
# to use the correct path (which I'm assuming will be the same as Debian).
|
|
$service_provider = 'upstart'
|
|
$keystone_wsgi_script_source = 'puppet:///modules/keystone/httpd/keystone.py'
|
|
}
|
|
}
|
|
}
|
|
'RedHat': {
|
|
$package_name = 'openstack-keystone'
|
|
$service_name = 'openstack-keystone'
|
|
$keystone_wsgi_script_path = '/var/www/cgi-bin/keystone'
|
|
$python_memcache_package_name = 'python-memcached'
|
|
$service_provider = undef
|
|
$keystone_wsgi_script_source = '/usr/share/keystone/keystone.wsgi'
|
|
}
|
|
}
|
|
}
|