trove: manage keystone resources
Manage endpoint, tenant, user and password for Trove service. Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
This commit is contained in:
@@ -110,6 +110,18 @@
|
||||
# (optional) Public Hostname or IP to connect to Cinder API
|
||||
# Defaults to '127.0.0.1'
|
||||
#
|
||||
# [*ks_trove_internal_host*]
|
||||
# (optional) Internal Hostname or IP to connect to Trove API
|
||||
# Defaults to '127.0.0.1'
|
||||
#
|
||||
# [*ks_trove_admin_host*]
|
||||
# (optional) Admin Hostname or IP to connect to Trove API
|
||||
# Defaults to '127.0.0.1'
|
||||
#
|
||||
# [*ks_trove_public_host*]
|
||||
# (optional) Public Hostname or IP to connect to Trove API
|
||||
# Defaults to '127.0.0.1'
|
||||
#
|
||||
# [*ks_neutron_internal_host*]
|
||||
# (optional) Internal Hostname or IP to connect to Neutron API
|
||||
# Defaults to '127.0.0.1'
|
||||
@@ -146,6 +158,10 @@
|
||||
# (optional) Public Hostname or IP to connect to Swift API
|
||||
# Defaults to '127.0.0.1'
|
||||
#
|
||||
# [*ks_trove_password*]
|
||||
# (optional) Password used by Trove to connect to Keystone API
|
||||
# Defaults to 'trovepassword'
|
||||
#
|
||||
# [*ks_ceilometer_password*]
|
||||
# (optional) Password used by Ceilometer to connect to Keystone API
|
||||
# Defaults to 'ceilometerpassword'
|
||||
@@ -194,6 +210,10 @@
|
||||
# (optional) Protocol used to connect to API. Could be 'http' or 'https'.
|
||||
# Defaults to 'http'
|
||||
#
|
||||
# [*ks_trove_public_proto*]
|
||||
# (optional) Protocol used to connect to API. Could be 'http' or 'https'.
|
||||
# Defaults to 'http'
|
||||
#
|
||||
# [*ks_glance_public_proto*]
|
||||
# (optional) Protocol used to connect to API. Could be 'http' or 'https'.
|
||||
# Defaults to 'http'
|
||||
@@ -234,6 +254,18 @@
|
||||
# (optional) TCP port to connect to Nova API from internal network
|
||||
# Defaults to '8774'
|
||||
#
|
||||
# [*ks_trove_internal_port*]
|
||||
# (optional) TCP port to connect to Trove API from internal network
|
||||
# Defaults to '8779'
|
||||
#
|
||||
# [*ks_trove_public_port*]
|
||||
# (optional) TCP port to connect to Trove API from public network
|
||||
# Defaults to '8779'
|
||||
#
|
||||
# [*ks_trove_admin_port*]
|
||||
# (optional) TCP port to connect to Trove API from admin network
|
||||
# Defaults to '8779'
|
||||
#
|
||||
# [*ks_nova_public_port*]
|
||||
# (optional) TCP port to connect to Nova API from public network
|
||||
# Defaults to '8774'
|
||||
@@ -398,6 +430,14 @@ class cloud::identity (
|
||||
$ks_swift_public_proto = 'http',
|
||||
$ks_swift_admin_proto = 'http',
|
||||
$ks_swift_internal_proto = 'http',
|
||||
$ks_trove_admin_host = '127.0.0.1',
|
||||
$ks_trove_internal_host = '127.0.0.1',
|
||||
$ks_trove_password = 'trovepassword',
|
||||
$ks_trove_public_host = '127.0.0.1',
|
||||
$ks_trove_public_port = 8779,
|
||||
$ks_trove_public_proto = 'http',
|
||||
$ks_trove_admin_proto = 'http',
|
||||
$ks_trove_internal_proto = 'http',
|
||||
$api_eth = '127.0.0.1',
|
||||
$region = 'RegionOne',
|
||||
$verbose = true,
|
||||
@@ -577,6 +617,18 @@ class cloud::identity (
|
||||
password => $ks_heat_password
|
||||
}
|
||||
|
||||
class {'trove::keystone::auth':
|
||||
admin_address => $ks_trove_admin_host,
|
||||
internal_address => $ks_trove_internal_host,
|
||||
public_address => $ks_trove_public_host,
|
||||
public_protocol => $ks_trove_public_proto,
|
||||
admin_protocol => $ks_trove_admin_proto,
|
||||
internal_protocol => $ks_trove_internal_proto,
|
||||
port => $ks_trove_public_port,
|
||||
region => $region,
|
||||
password => $ks_trove_password
|
||||
}
|
||||
|
||||
# Purge expored tokens every days at midnight
|
||||
class { 'keystone::cron::token_flush': }
|
||||
|
||||
|
||||
@@ -98,6 +98,14 @@ describe 'cloud::identity' do
|
||||
:ks_swift_admin_proto => 'https',
|
||||
:ks_swift_internal_proto => 'https',
|
||||
:ks_swift_admin_host => '10.0.0.1',
|
||||
:ks_trove_admin_host => '10.0.0.1',
|
||||
:ks_trove_internal_host => '10.0.0.1',
|
||||
:ks_trove_password => 'secrete',
|
||||
:ks_trove_public_host => '10.0.0.1',
|
||||
:ks_trove_public_port => '8779',
|
||||
:ks_trove_public_proto => 'https',
|
||||
:ks_trove_admin_proto => 'https',
|
||||
:ks_trove_internal_proto => 'https',
|
||||
:region => 'BigCloud',
|
||||
:verbose => true,
|
||||
:debug => true,
|
||||
@@ -203,6 +211,20 @@ describe 'cloud::identity' do
|
||||
)
|
||||
end
|
||||
|
||||
it 'configure trove endpoints' do
|
||||
should contain_class('trove::keystone::auth').with(
|
||||
:admin_address => '10.0.0.1',
|
||||
:internal_address => '10.0.0.1',
|
||||
:password => 'secrete',
|
||||
:port => '8779',
|
||||
:public_address => '10.0.0.1',
|
||||
:public_protocol => 'https',
|
||||
:admin_protocol => 'https',
|
||||
:internal_protocol => 'https',
|
||||
:region => 'BigCloud'
|
||||
)
|
||||
end
|
||||
|
||||
it 'configure nova endpoints' do
|
||||
should contain_class('nova::keystone::auth').with(
|
||||
:admin_address => '10.0.0.1',
|
||||
|
||||
Reference in New Issue
Block a user