Files
puppet-cloudkitty/manifests/keystone/auth.pp
ZhongShengping 507e865c29 Add the acceptance test to deploy the cloudkitty service
1) Already have the cloudkitty package in RedHat system, so we can
   add the acceptance test to deploy the service now.
2) Add auth_section and keystone_version in group "keystone_fetcher"
   to load plugin specific options and use specific keystone version.
3) Change the collector valume to 'ceilometer' by default
4) Update releated to test.

Change-Id: Ic2f8fafba1664273d89bd706768416da4d9b93e1
2016-12-14 17:05:53 +08:00

97 lines
2.9 KiB
Puppet

# == Class: cloudkitty::keystone::auth
#
# Configures cloudkitty user, service and endpoint in Keystone.
#
# === Parameters
#
# [*password*]
# (required) Password for cloudkitty user.
#
# [*auth_name*]
# Username for cloudkitty service. Defaults to 'cloudkitty'.
#
# [*email*]
# Email for cloudkitty user. Defaults to 'cloudkitty@localhost'.
#
# [*tenant*]
# Tenant for cloudkitty user. Defaults to 'services'.
#
# [*configure_endpoint*]
# Should cloudkitty endpoint be configured? Defaults to 'true'.
#
# [*configure_user*]
# (Optional) Should the service user be configured?
# Defaults to 'true'.
#
# [*configure_user_role*]
# (Optional) Should the admin role be configured for the service user?
# Defaults to 'true'.
#
# [*service_type*]
# Type of service. Defaults to 'key-manager'.
#
# [*region*]
# Region for endpoint. Defaults to 'RegionOne'.
#
# [*service_name*]
# (optional) Name of the service.
# Defaults to the value of 'cloudkitty'.
#
# [*service_description*]
# (optional) Description of the service.
# Default to 'OpenStack Rating Service'
#
# [*public_url*]
# (optional) The endpoint's public url. (Defaults to 'http://127.0.0.1:8889')
# This url should *not* contain any trailing '/'.
#
# [*admin_url*]
# (optional) The endpoint's admin url. (Defaults to 'http://127.0.0.1:8889')
# This url should *not* contain any trailing '/'.
#
# [*internal_url*]
# (optional) The endpoint's internal url. (Defaults to 'http://127.0.0.1:8889')
#
class cloudkitty::keystone::auth (
$password,
$auth_name = 'cloudkitty',
$email = 'cloudkitty@localhost',
$tenant = 'services',
$configure_endpoint = true,
$configure_user = true,
$configure_user_role = true,
$service_name = 'cloudkitty',
$service_description = 'OpenStack Rating Service',
$service_type = 'rating',
$region = 'RegionOne',
$public_url = 'http://127.0.0.1:8889',
$admin_url = 'http://127.0.0.1:8889',
$internal_url = 'http://127.0.0.1:8889',
) {
include ::cloudkitty::deps
if $configure_user_role {
Keystone_user_role["${auth_name}@${tenant}"] ~> Anchor['cloudkitty::config::end']
}
Keystone_endpoint["${region}/${service_name}::${service_type}"] ~> Anchor['cloudkitty::config::end']
keystone::resource::service_identity { 'cloudkitty':
configure_user => $configure_user,
configure_user_role => $configure_user_role,
configure_endpoint => $configure_endpoint,
service_name => $service_name,
service_type => $service_type,
service_description => $service_description,
region => $region,
auth_name => $auth_name,
password => $password,
email => $email,
tenant => $tenant,
public_url => $public_url,
internal_url => $internal_url,
admin_url => $admin_url,
}
}