Add support for clients/endpoint_type

Add support for clients/endpoint_type parameter.

Note: Default to False now, because TripleO already sets this resource.
      and we don't want duplicated resource.
      Once we switch TripleO to use this new option, the default will
      become os_service_default.

Change-Id: If707c5623c0e34e9219eeafdafaf0ac42daf5c8d
Closes-Bug: #1675409
This commit is contained in:
Emilien Macchi 2017-03-23 09:20:08 -04:00
parent 6334ee72cb
commit b865f447d9
3 changed files with 31 additions and 0 deletions

View File

@ -266,6 +266,15 @@
# (optional) Heat url in format like http://0.0.0.0:8004/v1/%(tenant_id)s.
# Defaults to $::os_service_default.
#
# [*heat_clients_endpoint_type*]
# (optional) Type of endpoint in Identity service catalog to use for
# communication with the OpenStack service.
# TODO(emilien): change the default from false to $::os_service_default
# once TripleO use it correctly from hieratata.
# The default value is set to false now to avoid duplicated resources in
# TripleO puppet catalog.
# Defaults to false.
#
# [*purge_config*]
# (optional) Whether to set only the specified config options
# in the heat config.
@ -372,6 +381,7 @@ class heat(
$notification_topics = $::os_service_default,
$enable_proxy_headers_parsing = $::os_service_default,
$heat_clients_url = $::os_service_default,
$heat_clients_endpoint_type = false,
$purge_config = false,
$auth_strategy = 'keystone',
$yaql_memory_quota = $::os_service_default,
@ -479,6 +489,12 @@ deprecated. Please use heat::default_transport_url instead.")
'clients_heat/url': value => $heat_clients_url;
}
if $heat_clients_endpoint_type {
heat_config {
'clients/endpoint_type': value => $heat_clients_endpoint_type;
}
}
if (!is_service_default($enable_stack_adopt)) {
validate_bool($enable_stack_adopt)
}

View File

@ -0,0 +1,3 @@
---
features:
- Support the clients/endpoint_type parameter in ::heat.

View File

@ -353,6 +353,18 @@ describe 'heat' do
end
shared_examples_for 'with heat_clients_endpoint_type set' do
before do
params.merge!(
:heat_clients_endpoint_type => 'internal',
)
end
it do
is_expected.to contain_heat_config('clients/endpoint_type').with_value('internal')
end
end
shared_examples_for 'with ec2authtoken auth uri set' do
before do
params.merge!(