diff --git a/manifests/keystone/auth.pp b/manifests/keystone/auth.pp index 85953e83d..51cb5265f 100644 --- a/manifests/keystone/auth.pp +++ b/manifests/keystone/auth.pp @@ -319,7 +319,7 @@ class nova::keystone::auth( } if $configure_endpoint { - Keystone_endpoint["${region}/${real_service_name}"] ~> Service <| name == 'nova-api' |> + Keystone_endpoint["${region}/${real_service_name}::compute"] ~> Service <| name == 'nova-api' |> } keystone::resource::service_identity { "nova service, user ${auth_name}": diff --git a/spec/classes/nova_keystone_auth_spec.rb b/spec/classes/nova_keystone_auth_spec.rb index 9ec6c8355..8b9fcf807 100644 --- a/spec/classes/nova_keystone_auth_spec.rb +++ b/spec/classes/nova_keystone_auth_spec.rb @@ -35,39 +35,36 @@ describe 'nova::keystone::auth' do :roles => ['admin'] )} - it { is_expected.to contain_keystone_service('nova').with( - :ensure => 'present', - :type => 'compute', + it { is_expected.to contain_keystone_service('nova::compute').with( + :ensure => 'present', :description => 'Openstack Compute Service' )} - it { is_expected.to contain_keystone_service('novav3').with( - :ensure => 'present', - :type => 'computev3', + it { is_expected.to contain_keystone_service('novav3::computev3').with( + :ensure => 'present', :description => 'Openstack Compute Service v3' )} - it { is_expected.to contain_keystone_service('nova_ec2').with( - :ensure => 'present', - :type => 'ec2', + it { is_expected.to contain_keystone_service('nova_ec2::ec2').with( + :ensure => 'present', :description => 'EC2 Service' )} - it { is_expected.to contain_keystone_endpoint('RegionOne/nova').with( + it { is_expected.to contain_keystone_endpoint('RegionOne/nova::compute').with( :ensure => 'present', :public_url => 'http://127.0.0.1:8774/v2/%(tenant_id)s', :admin_url => 'http://127.0.0.1:8774/v2/%(tenant_id)s', :internal_url => 'http://127.0.0.1:8774/v2/%(tenant_id)s' )} - it { is_expected.to contain_keystone_endpoint('RegionOne/novav3').with( + it { is_expected.to contain_keystone_endpoint('RegionOne/novav3::computev3').with( :ensure => 'present', :public_url => 'http://127.0.0.1:8774/v3', :admin_url => 'http://127.0.0.1:8774/v3', :internal_url => 'http://127.0.0.1:8774/v3' )} - it { is_expected.to contain_keystone_endpoint('RegionOne/nova_ec2').with( + it { is_expected.to contain_keystone_endpoint('RegionOne/nova_ec2::ec2').with( :ensure => 'present', :public_url => 'http://127.0.0.1:8773/services/Cloud', :admin_url => 'http://127.0.0.1:8773/services/Admin', @@ -91,15 +88,13 @@ describe 'nova::keystone::auth' do :roles => ['admin'] )} - it { is_expected.to contain_keystone_service('foo').with( + it { is_expected.to contain_keystone_service('foo::compute').with( :ensure => 'present', - :type => 'compute', :description => 'Openstack Compute Service' )} - it { is_expected.to contain_keystone_service('foo_ec2').with( + it { is_expected.to contain_keystone_service('foo_ec2::ec2').with( :ensure => 'present', - :type => 'ec2', :description => 'EC2 Service' )} @@ -117,8 +112,8 @@ describe 'nova::keystone::auth' do it { is_expected.to contain_keystone_user('thesame').with(:ensure => 'present') } it { is_expected.to contain_keystone_user_role('thesame@services').with(:ensure => 'present') } - it { is_expected.to contain_keystone_service('nova').with(:ensure => 'present') } - it { is_expected.to contain_keystone_service('novav3').with(:ensure => 'present') } + it { is_expected.to contain_keystone_service('nova::compute').with(:ensure => 'present') } + it { is_expected.to contain_keystone_service('novav3::computev3').with(:ensure => 'present') } end @@ -145,7 +140,7 @@ describe 'nova::keystone::auth' do end it do - expect { is_expected.to contain_keystone_service('nova') }.to raise_error(Puppet::Error, /service_name and service_name_v3 must be different/) + expect { is_expected.to contain_keystone_service('nova::compute') }.to raise_error(Puppet::Error, /service_name and service_name_v3 must be different/) end end @@ -166,21 +161,21 @@ describe 'nova::keystone::auth' do ) end - it { is_expected.to contain_keystone_endpoint('RegionTwo/nova').with( + it { is_expected.to contain_keystone_endpoint('RegionTwo/nova::compute').with( :ensure => 'present', :public_url => params[:public_url], :internal_url => params[:internal_url], :admin_url => params[:admin_url] )} - it { is_expected.to contain_keystone_endpoint('RegionTwo/novav3').with( + it { is_expected.to contain_keystone_endpoint('RegionTwo/novav3::computev3').with( :ensure => 'present', :public_url => params[:public_url_v3], :internal_url => params[:internal_url_v3], :admin_url => params[:admin_url_v3] )} - it { is_expected.to contain_keystone_endpoint('RegionTwo/nova_ec2').with( + it { is_expected.to contain_keystone_endpoint('RegionTwo/nova_ec2::ec2').with( :ensure => 'present', :public_url => params[:ec2_public_url], :internal_url => params[:ec2_internal_url], @@ -204,14 +199,14 @@ describe 'nova::keystone::auth' do ) end - it { is_expected.to contain_keystone_endpoint('RegionTwo/nova').with( + it { is_expected.to contain_keystone_endpoint('RegionTwo/nova::compute').with( :ensure => 'present', :public_url => 'https://10.0.0.1:9774/v2.2/%(tenant_id)s', :admin_url => 'https://10.0.0.2:9774/v2.2/%(tenant_id)s', :internal_url => 'https://10.0.0.3:9774/v2.2/%(tenant_id)s' )} - it { is_expected.to contain_keystone_endpoint('RegionTwo/nova_ec2').with( + it { is_expected.to contain_keystone_endpoint('RegionTwo/nova_ec2::ec2').with( :ensure => 'present', :public_url => 'https://10.0.0.1:9773/services/Cloud', :admin_url => 'https://10.0.0.2:9773/services/Admin', @@ -224,7 +219,7 @@ describe 'nova::keystone::auth' do params.merge!( :configure_endpoint => false ) end - it { is_expected.to_not contain_keystone_endpoint('RegionOne/nova') } + it { is_expected.to_not contain_keystone_endpoint('RegionOne/nova::compute') } end describe 'when disabling EC2 endpoint' do @@ -232,8 +227,8 @@ describe 'nova::keystone::auth' do params.merge!( :configure_ec2_endpoint => false ) end - it { is_expected.to_not contain_keystone_service('nova_ec2') } - it { is_expected.to_not contain_keystone_endpoint('RegionOne/nova_ec2') } + it { is_expected.to_not contain_keystone_service('nova_ec2::ec2') } + it { is_expected.to_not contain_keystone_endpoint('RegionOne/nova_ec2::ec2') } end describe 'when disabling user configuration' do @@ -243,9 +238,8 @@ describe 'nova::keystone::auth' do it { is_expected.to_not contain_keystone_user('nova') } it { is_expected.to contain_keystone_user_role('nova@services') } - it { is_expected.to contain_keystone_service('nova').with( - :ensure => 'present', - :type => 'compute', + it { is_expected.to contain_keystone_service('nova::compute').with( + :ensure => 'present', :description => 'Openstack Compute Service' )} end @@ -261,9 +255,8 @@ describe 'nova::keystone::auth' do it { is_expected.to_not contain_keystone_user('nova') } it { is_expected.to_not contain_keystone_user_role('nova@services') } - it { is_expected.to contain_keystone_service('nova').with( - :ensure => 'present', - :type => 'compute', + it { is_expected.to contain_keystone_service('nova::compute').with( + :ensure => 'present', :description => 'Openstack Compute Service' )} end @@ -284,7 +277,7 @@ describe 'nova::keystone::auth' do } end - it { is_expected.to contain_keystone_endpoint('RegionOne/nova').with_notify(['Service[nova-api]']) } + it { is_expected.to contain_keystone_endpoint('RegionOne/nova::compute').with_notify(['Service[nova-api]']) } end describe 'when overriding service names' do @@ -299,12 +292,12 @@ describe 'nova::keystone::auth' do it { is_expected.to contain_keystone_user('nova') } it { is_expected.to contain_keystone_user_role('nova@services') } - it { is_expected.to contain_keystone_service('nova_service') } - it { is_expected.to contain_keystone_service('nova_service_v3') } - it { is_expected.to contain_keystone_service('nova_service_ec2') } - it { is_expected.to contain_keystone_endpoint('RegionOne/nova_service') } - it { is_expected.to contain_keystone_endpoint('RegionOne/nova_service_v3') } - it { is_expected.to contain_keystone_endpoint('RegionOne/nova_service_ec2') } + it { is_expected.to contain_keystone_service('nova_service::compute') } + it { is_expected.to contain_keystone_service('nova_service_v3::computev3') } + it { is_expected.to contain_keystone_service('nova_service_ec2::ec2') } + it { is_expected.to contain_keystone_endpoint('RegionOne/nova_service::compute') } + it { is_expected.to contain_keystone_endpoint('RegionOne/nova_service_v3::computev3') } + it { is_expected.to contain_keystone_endpoint('RegionOne/nova_service_ec2::ec2') } end