diff --git a/manifests/keystone/auth.pp b/manifests/keystone/auth.pp index 95eb3fcde..383f39392 100644 --- a/manifests/keystone/auth.pp +++ b/manifests/keystone/auth.pp @@ -20,6 +20,8 @@ class nova::keystone::auth( warning('cinder parameter is deprecated and has no effect.') } + Keystone_endpoint["${region}/${auth_name}"] ~> Service <| name == 'nova-api' |> + keystone_user { $auth_name: ensure => present, password => $password, diff --git a/spec/classes/nova_keystone_endpoint_spec.rb b/spec/classes/nova_keystone_endpoint_spec.rb index 218fcbb98..a461810be 100644 --- a/spec/classes/nova_keystone_endpoint_spec.rb +++ b/spec/classes/nova_keystone_endpoint_spec.rb @@ -113,4 +113,23 @@ describe 'nova::keystone::auth' do it { should_not contain_keystone_endpoint('RegionOne/nova_ec2') } end + describe 'when configuring nova-api and the keystone endpoint' do + let :pre_condition do + "class { 'nova::api': admin_password => 'test' } + include nova" + end + + let :facts do + { :osfamily => "Debian"} + end + + let :params do + { + :password => 'test' + } + end + + it { should contain_keystone_endpoint('RegionOne/nova').with_notify('Service[nova-api]') } + end + end