Make keystone memcached servers configurable

Like other openstack services, designate can use memcached to cache keystone
tokens.

Change-Id: I0b21ae47aee0b94ab672610be23d4bafde3c1d68
This commit is contained in:
Andrew Spiers 2016-01-14 16:44:44 +11:00
parent a337e0188d
commit 37097b2328
2 changed files with 19 additions and 0 deletions

View File

@ -48,6 +48,11 @@
# (optional) Password used to authentication.
# Defaults to false
#
# [*keystone_memcached_servers*]
# (optional) Memcached Servers for keystone. Supply a list of memcached server
# IP's:Memcached Port.
# Defaults to false
#
# [*enable_api_v1*]
# (optional) Enable Designate API Version 1
# Defaults to true
@ -68,6 +73,7 @@ class designate::api (
$keystone_tenant = 'services',
$keystone_user = 'designate',
$keystone_password = false,
$keystone_memcached_servers = false,
$enable_api_v1 = true,
$enable_api_v2 = false,
) inherits designate {
@ -81,6 +87,12 @@ class designate::api (
}
# Keystone Middleware
if $keystone_memcached_servers {
designate_config { 'keystone_authtoken/memcached_servers' : value => join(any2array($keystone_memcached_servers), ',') }
} else {
designate_config { 'keystone_authtoken/memcached_servers' : ensure => absent, }
}
designate_config {
'keystone_authtoken/auth_host' : value => $keystone_host;
'keystone_authtoken/auth_port' : value => $keystone_port;

View File

@ -50,6 +50,13 @@ describe 'designate::api' do
is_expected.to contain_designate_config('service:api/auth_strategy').with_value('keystone')
end
end
context 'when using memcached with keystone auth' do
before { params.merge!(:keystone_memcached_servers => [ '127.0.0.1:11211', '127.0.0.1:11212' ]) }
it 'configures designate-api with keystone memcached servers' do
is_expected.to contain_designate_config('keystone_authtoken/memcached_servers').with_value('127.0.0.1:11211,127.0.0.1:11212')
end
end
end
end