87 lines
2.2 KiB
Puppet
87 lines
2.2 KiB
Puppet
# Configure some common parameters
|
|
#
|
|
# [*ssl*]
|
|
# (optional) Boolean to enable or not SSL.
|
|
# Defaults to false.
|
|
#
|
|
# [*ipv6*]
|
|
# (optional) Boolean to enable or not IPv6.
|
|
# Defaults to false.
|
|
#
|
|
# [*rpc_backend*]
|
|
# (optional) The oslo.messaging backend to configure for rpc.
|
|
# Defaults to 'rabbit'.
|
|
#
|
|
# [*notify_backend*]
|
|
# (optional) The oslo.messaging backend to configure for notify.
|
|
# Defaults to 'rabbit'.
|
|
#
|
|
class openstack_integration::config (
|
|
$ssl = false,
|
|
$ipv6 = false,
|
|
$rpc_backend = 'rabbit',
|
|
$notify_backend = 'rabbit',
|
|
) {
|
|
|
|
include openstack_integration::params
|
|
|
|
$messaging_default_proto = $rpc_backend
|
|
$messaging_notify_proto = $notify_backend
|
|
|
|
if $ssl {
|
|
$proto = 'https'
|
|
$messaging_default_port = '5671'
|
|
$messaging_notify_port = '5671'
|
|
$db_extra = {
|
|
'ssl_ca' => $::openstack_integration::params::ca_bundle_cert_path,
|
|
}
|
|
$ovn_proto = 'ssl'
|
|
} else {
|
|
$proto = 'http'
|
|
$messaging_default_port = '5672'
|
|
$messaging_notify_port = '5672'
|
|
$db_extra = {}
|
|
$ovn_proto = 'tcp'
|
|
}
|
|
|
|
$rabbit_port = $messaging_notify_port
|
|
|
|
if $ipv6 {
|
|
$host = '::1'
|
|
$hostname = 'localhost6'
|
|
$ip_version = '6'
|
|
# Note (dmsimard): ipv6 parsing in Swift and keystone_authtoken are
|
|
# different: https://bugs.launchpad.net/swift/+bug/1610064
|
|
$memcached_servers = ["inet6:[${host}]:11211"]
|
|
$memcache_servers = ["[${host}]:11211"]
|
|
$swift_memcached_servers = ["[${host}]:11211"]
|
|
} else {
|
|
$host = '127.0.0.1'
|
|
$hostname = 'localhost'
|
|
$ip_version = '4'
|
|
$memcached_servers = ["${host}:11211"]
|
|
$memcache_servers = $memcached_servers
|
|
$swift_memcached_servers = $memcached_servers
|
|
}
|
|
|
|
# in URL, brackets are needed
|
|
$ip_for_url = normalize_ip_for_uri($host)
|
|
|
|
$base_url = "${proto}://${ip_for_url}"
|
|
$keystone_auth_uri = "${base_url}:5000"
|
|
$keystone_admin_uri = "${base_url}:5000"
|
|
|
|
$tooz_url = os_url({
|
|
'scheme' => 'redis',
|
|
'password' => 'a_big_secret',
|
|
'host' => $ip_for_url,
|
|
'port' => '6379',
|
|
'query' => {
|
|
'ssl' => $ssl,
|
|
}
|
|
})
|
|
|
|
$ovn_nb_connection = "${ovn_proto}:${ip_for_url}:6641"
|
|
$ovn_sb_connection = "${ovn_proto}:${ip_for_url}:6642"
|
|
}
|