Add nova keystone endpoint

This commit add the class nova::keystone::auth.

This class can be used to configure the keystone
endpoint and roles for nova.
This commit is contained in:
Dan Bode 2012-04-09 08:42:33 -07:00
parent da2dc74697
commit 674840367a
1 changed files with 32 additions and 0 deletions

32
keystone/auth.pp Normal file
View File

@ -0,0 +1,32 @@
class nova::keystone::auth(
$auth_name = 'nova',
$password = 'nova_password',
$service = 'compute',
$address = '127.0.0.1',
$port = '8774',
$version = 'v1.1'
) {
Class['keystone::roles::admin'] -> Class['nova::keystone::auth']
keystone_user { $auth_name:
ensure => present,
password => $password,
}
keystone_user_role { "${auth_name}@services":
roles => 'admin',
require => Keystone_user[$auth_name]
}
keystone_service { $auth_name:
type => 'image',
description => "Openstack Compute Service",
}
keystone_endpoint { $auth_name:
ensure => present,
public_url => "http://${address}:${port}/${version}/%(tenant_id)s",
admin_url => "http://${address}:${port}/${version}/%(tenant_id)s",
internal_url => "http://${address}:${port}/${version}/%(tenant_id)s",
require => Keystone_service[$auth_name],
}
}