283ef7fa71
With the move to Keystone v3 API, let's deprecate version parameter and set it to undef by default, so it will deploy Keystone versionless endpoints. Keep the capacity to set it to 'unset' so v2.0 will still be created, so our users have a path of migration. Though this patch changes the default value so from now, endpoints will be created by default without version. If this patch breaks you, set version to 'unset' and think about a migration to Keystone v3. Change-Id: Ic2f741589bfbd687417e086379fc2fe60eba2024
83 lines
2.6 KiB
Ruby
83 lines
2.6 KiB
Ruby
require 'spec_helper'
|
|
|
|
describe 'keystone::endpoint' do
|
|
|
|
it { is_expected.to contain_keystone_service('keystone::identity').with(
|
|
:ensure => 'present',
|
|
:description => 'OpenStack Identity Service'
|
|
)}
|
|
|
|
describe 'with default parameters' do
|
|
it { is_expected.to contain_keystone_endpoint('RegionOne/keystone::identity').with(
|
|
:ensure => 'present',
|
|
:public_url => 'http://127.0.0.1:5000',
|
|
:admin_url => 'http://127.0.0.1:35357',
|
|
:internal_url => 'http://127.0.0.1:5000',
|
|
:region => 'RegionOne'
|
|
)}
|
|
end
|
|
|
|
describe 'with overridden parameters' do
|
|
|
|
let :params do
|
|
{ :version => 'v42.6',
|
|
:public_url => 'https://identity.some.tld/the/main/endpoint',
|
|
:admin_url => 'https://identity-int.some.tld/some/admin/endpoint',
|
|
:internal_url => 'https://identity-int.some.tld/some/internal/endpoint',
|
|
:region => 'East'
|
|
}
|
|
end
|
|
|
|
it { is_expected.to contain_keystone_endpoint('East/keystone::identity').with(
|
|
:ensure => 'present',
|
|
:public_url => 'https://identity.some.tld/the/main/endpoint/v42.6',
|
|
:admin_url => 'https://identity-int.some.tld/some/admin/endpoint/v42.6',
|
|
:internal_url => 'https://identity-int.some.tld/some/internal/endpoint/v42.6',
|
|
:region => 'East'
|
|
)}
|
|
end
|
|
|
|
describe 'with unset version to test backward compatibility' do
|
|
let :params do
|
|
{ :version => 'unset' }
|
|
end
|
|
|
|
it { is_expected.to contain_keystone_endpoint('RegionOne/keystone::identity').with(
|
|
:ensure => 'present',
|
|
:public_url => 'http://127.0.0.1:5000/v2.0',
|
|
:admin_url => 'http://127.0.0.1:35357/v2.0',
|
|
:internal_url => 'http://127.0.0.1:5000/v2.0'
|
|
)}
|
|
end
|
|
|
|
describe 'without internal_url parameter' do
|
|
|
|
let :params do
|
|
{ :public_url => 'https://identity.some.tld/the/main/endpoint' }
|
|
end
|
|
|
|
it 'internal_url should default to public_url' do
|
|
is_expected.to contain_keystone_endpoint('RegionOne/keystone::identity').with(
|
|
:ensure => 'present',
|
|
:public_url => 'https://identity.some.tld/the/main/endpoint',
|
|
:internal_url => 'https://identity.some.tld/the/main/endpoint'
|
|
)
|
|
end
|
|
end
|
|
|
|
describe 'with domain parameters' do
|
|
|
|
let :params do
|
|
{ :user_domain => 'userdomain',
|
|
:project_domain => 'projectdomain',
|
|
:default_domain => 'defaultdomain' }
|
|
end
|
|
|
|
it { is_expected.to contain_keystone__resource__service_identity('keystone').with(
|
|
:user_domain => 'userdomain',
|
|
:project_domain => 'projectdomain',
|
|
:default_domain => 'defaultdomain'
|
|
)}
|
|
end
|
|
end
|