Convert all class usage to relative names

In Puppet 3 there was a need to use absolute
names to prevent issues. Since Puppet 4 everything
is absolute by default which makes this not needed.

We need to change this everywhere so that we can
revert the pin in [1] that now prevents us from
using the latest version of the puppet-lint check
puppet-lint-absolute_classname_check that properly
checks that we dont use absolute names.

[1] https://review.opendev.org/#/c/697742/

Change-Id: I78b74fbeb08be7234189e4d266412fb7fb7a73c0
This commit is contained in:
Tobias Urdin
2019-12-08 12:59:28 +01:00
parent 6087ece0fc
commit 81687e2ead
44 changed files with 525 additions and 524 deletions

View File

@@ -15,27 +15,27 @@
# #
if ($::os['family'] == 'Debian') { if ($::os['family'] == 'Debian') {
include ::apache::params include apache::params
class { '::apache': class { 'apache':
mod_packages => merge($::apache::params::mod_packages, { mod_packages => merge($::apache::params::mod_packages, {
'wsgi' => 'libapache2-mod-wsgi-py3', 'wsgi' => 'libapache2-mod-wsgi-py3',
}) })
} }
} }
include ::openstack_integration include openstack_integration
include ::openstack_integration::rabbitmq include openstack_integration::rabbitmq
include ::openstack_integration::mysql include openstack_integration::mysql
include ::openstack_integration::keystone include openstack_integration::keystone
include ::openstack_integration::glance include openstack_integration::glance
include ::openstack_integration::neutron include openstack_integration::neutron
include ::openstack_integration::placement include openstack_integration::placement
include ::openstack_integration::nova include openstack_integration::nova
include ::openstack_integration::cinder include openstack_integration::cinder
include ::openstack_integration::horizon include openstack_integration::horizon
include ::openstack_integration::provision include openstack_integration::provision
class { '::openstack_integration::tempest': class { 'openstack_integration::tempest':
horizon => true, horizon => true,
cinder => true, cinder => true,
} }

View File

@@ -25,8 +25,8 @@ elsif ($::os['name'] == 'Fedora') or
} }
if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or
($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) { ($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) {
include ::apache::params include apache::params
class { '::apache': class { 'apache':
mod_packages => merge($::apache::params::mod_packages, { mod_packages => merge($::apache::params::mod_packages, {
'wsgi' => $wsgi_mod_package, 'wsgi' => $wsgi_mod_package,
}), }),
@@ -36,27 +36,27 @@ if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or
} }
} }
include ::openstack_integration include openstack_integration
include ::openstack_integration::rabbitmq include openstack_integration::rabbitmq
include ::openstack_integration::memcached include openstack_integration::memcached
include ::openstack_integration::mysql include openstack_integration::mysql
include ::openstack_integration::keystone include openstack_integration::keystone
class { '::openstack_integration::glance': class { 'openstack_integration::glance':
backend => 'swift', backend => 'swift',
} }
include ::openstack_integration::neutron include openstack_integration::neutron
include ::openstack_integration::swift include openstack_integration::swift
include ::openstack_integration::placement include openstack_integration::placement
include ::openstack_integration::nova include openstack_integration::nova
include ::openstack_integration::cinder include openstack_integration::cinder
include ::openstack_integration::horizon include openstack_integration::horizon
include ::openstack_integration::heat include openstack_integration::heat
include ::openstack_integration::zaqar include openstack_integration::zaqar
include ::openstack_integration::ironic include openstack_integration::ironic
include ::openstack_integration::mistral include openstack_integration::mistral
include ::openstack_integration::provision include openstack_integration::provision
class { '::openstack_integration::tempest': class { 'openstack_integration::tempest':
cinder => true, cinder => true,
heat => true, heat => true,
horizon => true, horizon => true,

View File

@@ -25,8 +25,8 @@ elsif ($::os['name'] == 'Fedora') or
} }
if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or
($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) { ($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) {
include ::apache::params include apache::params
class { '::apache': class { 'apache':
mod_packages => merge($::apache::params::mod_packages, { mod_packages => merge($::apache::params::mod_packages, {
'wsgi' => $wsgi_mod_package, 'wsgi' => $wsgi_mod_package,
}), }),
@@ -65,58 +65,58 @@ case $::osfamily {
} }
} }
include ::openstack_integration include openstack_integration
class { '::openstack_integration::config': class { 'openstack_integration::config':
ssl => $ssl, ssl => $ssl,
ipv6 => $ipv6, ipv6 => $ipv6,
rpc_backend => $om_rpc, rpc_backend => $om_rpc,
notify_backend => $om_notify, notify_backend => $om_notify,
} }
if $ssl { if $ssl {
include ::openstack_integration::cacert include openstack_integration::cacert
} }
include ::openstack_integration::memcached include openstack_integration::memcached
include ::openstack_integration::rabbitmq include openstack_integration::rabbitmq
if ($om_rpc == 'amqp') { if ($om_rpc == 'amqp') {
include ::openstack_integration::qdr include openstack_integration::qdr
} }
include ::openstack_integration::mysql include openstack_integration::mysql
class { '::openstack_integration::keystone': class { 'openstack_integration::keystone':
# NOTE(sileht): Telemetry autoscaling tempest tests can't renew token, so we # NOTE(sileht): Telemetry autoscaling tempest tests can't renew token, so we
# use a long one # use a long one
token_expiration => '2400', token_expiration => '2400',
} }
class { '::openstack_integration::glance': class { 'openstack_integration::glance':
backend => 'rbd', backend => 'rbd',
} }
class { '::openstack_integration::neutron': class { 'openstack_integration::neutron':
notification_topics => $notification_topics, notification_topics => $notification_topics,
} }
include ::openstack_integration::placement include openstack_integration::placement
class { '::openstack_integration::nova': class { 'openstack_integration::nova':
libvirt_rbd => true, libvirt_rbd => true,
notification_topics => $notification_topics, notification_topics => $notification_topics,
} }
class { '::openstack_integration::cinder': class { 'openstack_integration::cinder':
backend => 'rbd', backend => 'rbd',
} }
include ::openstack_integration::ceilometer include openstack_integration::ceilometer
class { '::openstack_integration::aodh': class { 'openstack_integration::aodh':
notification_topics => $notification_topics, notification_topics => $notification_topics,
} }
if $enable_vitrage { if $enable_vitrage {
include ::openstack_integration::vitrage include openstack_integration::vitrage
} }
include ::openstack_integration::ceph include openstack_integration::ceph
class { '::openstack_integration::heat': class { 'openstack_integration::heat':
notification_topics => $notification_topics, notification_topics => $notification_topics,
} }
include ::openstack_integration::provision include openstack_integration::provision
include ::openstack_integration::redis include openstack_integration::redis
include ::openstack_integration::gnocchi include openstack_integration::gnocchi
include ::openstack_integration::panko include openstack_integration::panko
class { '::openstack_integration::tempest': class { 'openstack_integration::tempest':
cinder => true, cinder => true,
gnocchi => true, gnocchi => true,
ceilometer => true, ceilometer => true,

View File

@@ -25,8 +25,8 @@ elsif ($::os['name'] == 'Fedora') or
} }
if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or
($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) { ($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) {
include ::apache::params include apache::params
class { '::apache': class { 'apache':
mod_packages => merge($::apache::params::mod_packages, { mod_packages => merge($::apache::params::mod_packages, {
'wsgi' => $wsgi_mod_package, 'wsgi' => $wsgi_mod_package,
}), }),
@@ -59,44 +59,44 @@ case $::osfamily {
} }
} }
include ::openstack_integration include openstack_integration
class { '::openstack_integration::config': class { 'openstack_integration::config':
ssl => $ssl, ssl => $ssl,
ipv6 => $ipv6, ipv6 => $ipv6,
} }
if $ssl { if $ssl {
include ::openstack_integration::cacert include openstack_integration::cacert
} }
include ::openstack_integration::memcached include openstack_integration::memcached
include ::openstack_integration::rabbitmq include openstack_integration::rabbitmq
include ::openstack_integration::mysql include openstack_integration::mysql
include ::openstack_integration::keystone include openstack_integration::keystone
class { '::openstack_integration::glance': class { 'openstack_integration::glance':
backend => 'swift', backend => 'swift',
} }
include ::openstack_integration::neutron include openstack_integration::neutron
include ::openstack_integration::swift include openstack_integration::swift
include ::openstack_integration::ironic include openstack_integration::ironic
include ::openstack_integration::zaqar include openstack_integration::zaqar
include ::openstack_integration::provision include openstack_integration::provision
include ::openstack_integration::placement include openstack_integration::placement
class { '::openstack_integration::nova': class { 'openstack_integration::nova':
volume_encryption => true, volume_encryption => true,
} }
class { '::openstack_integration::cinder': class { 'openstack_integration::cinder':
volume_encryption => true, volume_encryption => true,
cinder_backup => 'swift', cinder_backup => 'swift',
} }
include ::openstack_integration::barbican include openstack_integration::barbican
if $ec2api_enabled { if $ec2api_enabled {
include ::openstack_integration::ec2api include openstack_integration::ec2api
} }
class { '::openstack_integration::tempest': class { 'openstack_integration::tempest':
cinder => true, cinder => true,
cinder_backup => true, cinder_backup => true,
swift => true, swift => true,

View File

@@ -25,8 +25,8 @@ elsif ($::os['name'] == 'Fedora') or
} }
if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or
($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) { ($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) {
include ::apache::params include apache::params
class { '::apache': class { 'apache':
mod_packages => merge($::apache::params::mod_packages, { mod_packages => merge($::apache::params::mod_packages, {
'wsgi' => $wsgi_mod_package, 'wsgi' => $wsgi_mod_package,
}), }),
@@ -84,44 +84,44 @@ if ($::operatingsystem == 'Ubuntu') and (versioncmp($::operatingsystemmajrelease
$designate_enabled = true $designate_enabled = true
} }
include ::openstack_integration include openstack_integration
class { '::openstack_integration::config': class { 'openstack_integration::config':
ssl => $ssl, ssl => $ssl,
ipv6 => $ipv6, ipv6 => $ipv6,
} }
if $ssl { if $ssl {
include ::openstack_integration::cacert include openstack_integration::cacert
} }
include ::openstack_integration::memcached include openstack_integration::memcached
include ::openstack_integration::rabbitmq include openstack_integration::rabbitmq
include ::openstack_integration::mysql include openstack_integration::mysql
include ::openstack_integration::keystone include openstack_integration::keystone
include ::openstack_integration::glance include openstack_integration::glance
class { '::openstack_integration::neutron': class { 'openstack_integration::neutron':
driver => 'linuxbridge', driver => 'linuxbridge',
} }
include ::openstack_integration::placement include openstack_integration::placement
include ::openstack_integration::nova include openstack_integration::nova
if $trove_enabled { if $trove_enabled {
include ::openstack_integration::trove include openstack_integration::trove
} }
include ::openstack_integration::horizon include openstack_integration::horizon
include ::openstack_integration::heat include openstack_integration::heat
class { '::openstack_integration::sahara': class { 'openstack_integration::sahara':
integration_enable => $sahara_integration_enable, integration_enable => $sahara_integration_enable,
} }
if $designate_enabled { if $designate_enabled {
include ::openstack_integration::designate include openstack_integration::designate
} }
if $murano_enabled { if $murano_enabled {
include ::openstack_integration::murano include openstack_integration::murano
} }
if $mistral_enabled { if $mistral_enabled {
include ::openstack_integration::mistral include openstack_integration::mistral
} }
include ::openstack_integration::provision include openstack_integration::provision
class { '::openstack_integration::tempest': class { 'openstack_integration::tempest':
designate => $designate_enabled, designate => $designate_enabled,
trove => $trove_enabled, trove => $trove_enabled,
mistral => $mistral_enabled, mistral => $mistral_enabled,

View File

@@ -25,8 +25,8 @@ elsif ($::os['name'] == 'Fedora') or
} }
if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or if ($::os['family'] == 'Debian') or ($::os['name'] == 'Fedora') or
($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) { ($::os['family'] == 'RedHat' and Integer.new($::os['release']['major']) > 7) {
include ::apache::params include apache::params
class { '::apache': class { 'apache':
mod_packages => merge($::apache::params::mod_packages, { mod_packages => merge($::apache::params::mod_packages, {
'wsgi' => $wsgi_mod_package, 'wsgi' => $wsgi_mod_package,
}), }),
@@ -62,45 +62,45 @@ if $::operatingsystem == 'Ubuntu' {
$bgp_dragent_enabled = true $bgp_dragent_enabled = true
} }
include ::openstack_integration include openstack_integration
class { '::openstack_integration::config': class { 'openstack_integration::config':
ssl => $ssl, ssl => $ssl,
ipv6 => $ipv6, ipv6 => $ipv6,
} }
if $ssl { if $ssl {
include ::openstack_integration::cacert include openstack_integration::cacert
} }
include ::openstack_integration::memcached include openstack_integration::memcached
include ::openstack_integration::rabbitmq include openstack_integration::rabbitmq
include ::openstack_integration::mysql include openstack_integration::mysql
include ::openstack_integration::keystone include openstack_integration::keystone
class { '::openstack_integration::glance': class { 'openstack_integration::glance':
backend => 'swift', backend => 'swift',
} }
class { '::openstack_integration::neutron': class { 'openstack_integration::neutron':
bgpvpn_enabled => $bgpvpn_enabled, bgpvpn_enabled => $bgpvpn_enabled,
l2gw_enabled => $l2gw_enabled, l2gw_enabled => $l2gw_enabled,
bgp_dragent_enabled => $bgp_dragent_enabled, bgp_dragent_enabled => $bgp_dragent_enabled,
} }
include ::openstack_integration::placement include openstack_integration::placement
class { '::openstack_integration::nova': class { 'openstack_integration::nova':
libvirt_rbd => true, libvirt_rbd => true,
} }
class { '::openstack_integration::ceph': class { 'openstack_integration::ceph':
deploy_rgw => true, deploy_rgw => true,
swift_dropin => true, swift_dropin => true,
} }
if $watcher_enabled { if $watcher_enabled {
include ::openstack_integration::watcher include openstack_integration::watcher
} }
include ::openstack_integration::provision include openstack_integration::provision
# Don't test swift, radosgw won't pass the current tests # Don't test swift, radosgw won't pass the current tests
# Glance, nova, neutron are true by default. # Glance, nova, neutron are true by default.
class { '::openstack_integration::tempest': class { 'openstack_integration::tempest':
watcher => $watcher_enabled, watcher => $watcher_enabled,
bgpvpn => $bgpvpn_enabled, bgpvpn => $bgpvpn_enabled,
l2gw => $l2gw_enabled, l2gw => $l2gw_enabled,

View File

@@ -8,8 +8,8 @@ class openstack_integration::aodh (
$notification_topics = $::os_service_default, $notification_topics = $::os_service_default,
) { ) {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'aodh': openstack_integration::mq_user { 'aodh':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
@@ -24,10 +24,10 @@ class openstack_integration::aodh (
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class { '::aodh::logging': class { 'aodh::logging':
debug => true, debug => true,
} }
class { '::aodh': class { 'aodh':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -48,16 +48,16 @@ class openstack_integration::aodh (
notification_topics => $notification_topics, notification_topics => $notification_topics,
notification_driver => 'messagingv2', notification_driver => 'messagingv2',
} }
class { '::aodh::db::mysql': class { 'aodh::db::mysql':
password => 'aodh', password => 'aodh',
} }
class { '::aodh::keystone::auth': class { 'aodh::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8042", public_url => "${::openstack_integration::config::base_url}:8042",
internal_url => "${::openstack_integration::config::base_url}:8042", internal_url => "${::openstack_integration::config::base_url}:8042",
admin_url => "${::openstack_integration::config::base_url}:8042", admin_url => "${::openstack_integration::config::base_url}:8042",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::aodh::keystone::authtoken': class { 'aodh::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -65,27 +65,27 @@ class openstack_integration::aodh (
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::aodh::api': class { 'aodh::api':
enabled => true, enabled => true,
service_name => 'httpd', service_name => 'httpd',
sync_db => true, sync_db => true,
} }
include ::apache include apache
class { '::aodh::wsgi::apache': class { 'aodh::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/aodh/ssl/private/${::fqdn}.pem", ssl_key => "/etc/aodh/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
workers => 2, workers => 2,
} }
class { '::aodh::auth': class { 'aodh::auth':
auth_url => $::openstack_integration::config::keystone_auth_uri, auth_url => $::openstack_integration::config::keystone_auth_uri,
auth_password => 'a_big_secret', auth_password => 'a_big_secret',
} }
class { '::aodh::client': } class { 'aodh::client': }
class { '::aodh::notifier': } class { 'aodh::notifier': }
class { '::aodh::listener': } class { 'aodh::listener': }
class { '::aodh::evaluator': class { 'aodh::evaluator':
evaluation_interval => 10, evaluation_interval => 10,
} }

View File

@@ -1,7 +1,7 @@
class openstack_integration::barbican { class openstack_integration::barbican {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'barbican': openstack_integration::mq_user { 'barbican':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
@@ -16,32 +16,32 @@ class openstack_integration::barbican {
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
include ::barbican include barbican
class { '::barbican::db::mysql': class { 'barbican::db::mysql':
password => 'barbican', password => 'barbican',
} }
class { '::barbican::db': class { 'barbican::db':
database_connection => 'mysql+pymysql://barbican:barbican@127.0.0.1/barbican?charset=utf8', database_connection => 'mysql+pymysql://barbican:barbican@127.0.0.1/barbican?charset=utf8',
} }
class { '::barbican::keystone::auth': class { 'barbican::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:9311", public_url => "${::openstack_integration::config::base_url}:9311",
internal_url => "${::openstack_integration::config::base_url}:9311", internal_url => "${::openstack_integration::config::base_url}:9311",
admin_url => "${::openstack_integration::config::base_url}:9311", admin_url => "${::openstack_integration::config::base_url}:9311",
password => 'a_big_secret', password => 'a_big_secret',
} }
include ::barbican::quota include barbican::quota
include ::barbican::keystone::notification include barbican::keystone::notification
class { '::barbican::api::logging': class { 'barbican::api::logging':
debug => true, debug => true,
} }
class { '::barbican::keystone::authtoken': class { 'barbican::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
auth_url => "${::openstack_integration::config::keystone_admin_uri}/v3", auth_url => "${::openstack_integration::config::keystone_admin_uri}/v3",
www_authenticate_uri => "${::openstack_integration::config::keystone_auth_uri}/v3", www_authenticate_uri => "${::openstack_integration::config::keystone_auth_uri}/v3",
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
} }
class { '::barbican::api': class { 'barbican::api':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -63,14 +63,14 @@ class openstack_integration::barbican {
db_auto_create => false, db_auto_create => false,
rabbit_use_ssl => $::openstack_integration::config::ssl, rabbit_use_ssl => $::openstack_integration::config::ssl,
} }
include ::apache include apache
class { '::barbican::wsgi::apache': class { 'barbican::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/barbican/ssl/private/${::fqdn}.pem", ssl_key => "/etc/barbican/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
workers => 2, workers => 2,
} }
class { '::barbican::worker': } class { 'barbican::worker': }
} }

View File

@@ -3,8 +3,8 @@
class openstack_integration::bind { class openstack_integration::bind {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
# Need some particular options that aren't default in ::dns when using # Need some particular options that aren't default in ::dns when using
# designate with bind9 backend. Set them up. # designate with bind9 backend. Set them up.
@@ -17,7 +17,7 @@ class openstack_integration::bind {
} }
# NOTE (dmsimard): listen_on_v6 is false and overridden due to extended port # NOTE (dmsimard): listen_on_v6 is false and overridden due to extended port
# configuration in additional_options # configuration in additional_options
class { '::dns': class { 'dns':
recursion => 'no', recursion => 'no',
allow_recursion => [], allow_recursion => [],
controls => $controls, controls => $controls,

View File

@@ -1,7 +1,7 @@
class openstack_integration::cacert { class openstack_integration::cacert {
include ::openstack_integration::params include openstack_integration::params
include ::openstack_integration::config include openstack_integration::config
file { $::openstack_integration::params::cert_path: file { $::openstack_integration::params::cert_path:
ensure => present, ensure => present,

View File

@@ -13,8 +13,8 @@ class openstack_integration::ceilometer (
$integration_enable = true, $integration_enable = true,
){ ){
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'ceilometer': openstack_integration::mq_user { 'ceilometer':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
@@ -29,10 +29,10 @@ class openstack_integration::ceilometer (
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class { '::ceilometer::logging': class { 'ceilometer::logging':
debug => true, debug => true,
} }
class { '::ceilometer': class { 'ceilometer':
telemetry_secret => 'secrete', telemetry_secret => 'secrete',
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
@@ -52,7 +52,7 @@ class openstack_integration::ceilometer (
amqp_sasl_mechanisms => 'PLAIN', amqp_sasl_mechanisms => 'PLAIN',
memcache_servers => $::openstack_integration::config::memcached_servers, memcache_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::ceilometer::keystone::auth': class { 'ceilometer::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8777", public_url => "${::openstack_integration::config::base_url}:8777",
internal_url => "${::openstack_integration::config::base_url}:8777", internal_url => "${::openstack_integration::config::base_url}:8777",
admin_url => "${::openstack_integration::config::base_url}:8777", admin_url => "${::openstack_integration::config::base_url}:8777",
@@ -64,7 +64,7 @@ class openstack_integration::ceilometer (
# Ensure Gnocchi and creads are ready before running ceilometer-upgrade # Ensure Gnocchi and creads are ready before running ceilometer-upgrade
# We use Gnocchi/Panko instead of local database, db::sync is required to populate # We use Gnocchi/Panko instead of local database, db::sync is required to populate
# gnocchi resource types. # gnocchi resource types.
include ::ceilometer::db::sync include ceilometer::db::sync
Service['httpd'] -> Exec['ceilometer-upgrade'] Service['httpd'] -> Exec['ceilometer-upgrade']
Class['ceilometer::agent::auth'] -> Exec['ceilometer-upgrade'] Class['ceilometer::agent::auth'] -> Exec['ceilometer-upgrade']
Class['ceilometer::keystone::auth'] -> Exec['ceilometer-upgrade'] Class['ceilometer::keystone::auth'] -> Exec['ceilometer-upgrade']
@@ -74,14 +74,14 @@ class openstack_integration::ceilometer (
$sample_pipeline_publishers = ['gnocchi://'] $sample_pipeline_publishers = ['gnocchi://']
$event_pipeline_publishers = ['gnocchi://', 'panko://'] $event_pipeline_publishers = ['gnocchi://', 'panko://']
class { '::ceilometer::agent::notification': class { 'ceilometer::agent::notification':
notification_workers => '2', notification_workers => '2',
manage_pipeline => true, manage_pipeline => true,
pipeline_publishers => $sample_pipeline_publishers, pipeline_publishers => $sample_pipeline_publishers,
manage_event_pipeline => true, manage_event_pipeline => true,
event_pipeline_publishers => $event_pipeline_publishers, event_pipeline_publishers => $event_pipeline_publishers,
} }
class { '::ceilometer::agent::polling': class { 'ceilometer::agent::polling':
manage_polling => true, manage_polling => true,
compute_namespace => $compute_namespace, compute_namespace => $compute_namespace,
# NOTE(sileht): Use 1 minute instead 10 otherwise the telemetry tempest # NOTE(sileht): Use 1 minute instead 10 otherwise the telemetry tempest
@@ -91,14 +91,14 @@ class openstack_integration::ceilometer (
} else { } else {
# NOTE(tobasco): When running the beaker tests we need to exclude the # NOTE(tobasco): When running the beaker tests we need to exclude the
# gnocchi resource types since the acceptance test does not setup gnocchi itself. # gnocchi resource types since the acceptance test does not setup gnocchi itself.
class { '::ceilometer::db::sync': class { 'ceilometer::db::sync':
extra_params => '--skip-gnocchi-resource-types', extra_params => '--skip-gnocchi-resource-types',
} }
class { '::ceilometer::agent::notification': } class { 'ceilometer::agent::notification': }
} }
class { '::ceilometer::expirer': } class { 'ceilometer::expirer': }
class { '::ceilometer::agent::auth': class { 'ceilometer::agent::auth':
auth_password => 'a_big_secret', auth_password => 'a_big_secret',
auth_url => $::openstack_integration::config::keystone_auth_uri, auth_url => $::openstack_integration::config::keystone_auth_uri,
} }

View File

@@ -15,7 +15,7 @@ class openstack_integration::ceph (
$swift_dropin = false, $swift_dropin = false,
) { ) {
include ::openstack_integration::config include openstack_integration::config
if $::openstack_integration::config::ipv6 { if $::openstack_integration::config::ipv6 {
$ms_bind_ipv6 = true $ms_bind_ipv6 = true
@@ -54,7 +54,7 @@ test -b /dev/ceph_vg/lv_data
Exec['lvm_create'] -> Class['Ceph::Osds'] Exec['lvm_create'] -> Class['Ceph::Osds']
class { '::ceph::profile::params': class { 'ceph::profile::params':
fsid => '7200aea0-2ddd-4a32-aa2a-d49f66ab554c', fsid => '7200aea0-2ddd-4a32-aa2a-d49f66ab554c',
manage_repo => false, # repo already managed in openstack_integration::repo manage_repo => false, # repo already managed in openstack_integration::repo
ms_bind_ipv6 => $ms_bind_ipv6, ms_bind_ipv6 => $ms_bind_ipv6,
@@ -101,9 +101,9 @@ test -b /dev/ceph_vg/lv_data
$ceph_pools = ['glance', 'nova', 'cinder', 'gnocchi'] $ceph_pools = ['glance', 'nova', 'cinder', 'gnocchi']
ceph::pool { $ceph_pools: } ceph::pool { $ceph_pools: }
class { '::ceph::profile::mgr': } class { 'ceph::profile::mgr': }
class { '::ceph::profile::mon': } class { 'ceph::profile::mon': }
class { '::ceph::profile::osd': } class { 'ceph::profile::osd': }
# Extra Ceph configuration to increase performances # Extra Ceph configuration to increase performances
$ceph_extra_config = { $ceph_extra_config = {
@@ -111,7 +111,7 @@ test -b /dev/ceph_vg/lv_data
} }
class { '::ceph::conf': class { 'ceph::conf':
args => $ceph_extra_config, args => $ceph_extra_config,
} }
@@ -126,7 +126,7 @@ test -b /dev/ceph_vg/lv_data
} }
# FIXME(Xarses) switch to param when supported in puppet-ceph # FIXME(Xarses) switch to param when supported in puppet-ceph
class { '::ceph::profile::rgw': class { 'ceph::profile::rgw':
# swift_dropin = $swift_dropin # swift_dropin = $swift_dropin
} }
@@ -147,7 +147,7 @@ test -b /dev/ceph_vg/lv_data
} }
if $swift_dropin { if $swift_dropin {
class { '::ceph::rgw::keystone::auth': class { 'ceph::rgw::keystone::auth':
password => $password, password => $password,
user => $auth_name, user => $auth_name,
tenant => $project, tenant => $project,

View File

@@ -25,8 +25,8 @@ class openstack_integration::cinder (
$notification_topics = $::os_service_default, $notification_topics = $::os_service_default,
) { ) {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'cinder': openstack_integration::mq_user { 'cinder':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
@@ -40,11 +40,11 @@ class openstack_integration::cinder (
} }
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
include ::cinder::client include cinder::client
class { '::cinder::db::mysql': class { 'cinder::db::mysql':
password => 'cinder', password => 'cinder',
} }
class { '::cinder::keystone::auth': class { 'cinder::keystone::auth':
public_url_v2 => "${::openstack_integration::config::base_url}:8776/v2/%(tenant_id)s", public_url_v2 => "${::openstack_integration::config::base_url}:8776/v2/%(tenant_id)s",
internal_url_v2 => "${::openstack_integration::config::base_url}:8776/v2/%(tenant_id)s", internal_url_v2 => "${::openstack_integration::config::base_url}:8776/v2/%(tenant_id)s",
admin_url_v2 => "${::openstack_integration::config::base_url}:8776/v2/%(tenant_id)s", admin_url_v2 => "${::openstack_integration::config::base_url}:8776/v2/%(tenant_id)s",
@@ -53,10 +53,10 @@ class openstack_integration::cinder (
admin_url_v3 => "${::openstack_integration::config::base_url}:8776/v3/%(tenant_id)s", admin_url_v3 => "${::openstack_integration::config::base_url}:8776/v3/%(tenant_id)s",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::cinder::logging': class { 'cinder::logging':
debug => true, debug => true,
} }
class { '::cinder': class { 'cinder':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -68,7 +68,7 @@ class openstack_integration::cinder (
rabbit_use_ssl => $::openstack_integration::config::ssl, rabbit_use_ssl => $::openstack_integration::config::ssl,
amqp_sasl_mechanisms => 'PLAIN', amqp_sasl_mechanisms => 'PLAIN',
} }
class { '::cinder::ceilometer': class { 'cinder::ceilometer':
notification_transport_url => os_transport_url({ notification_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_notify_proto, 'transport' => $::openstack_integration::config::messaging_notify_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -90,7 +90,7 @@ class openstack_integration::cinder (
$keymgr_encryption_api_url = undef $keymgr_encryption_api_url = undef
$keymgr_encryption_auth_url = undef $keymgr_encryption_auth_url = undef
} }
class { '::cinder::keystone::authtoken': class { 'cinder::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -98,7 +98,7 @@ class openstack_integration::cinder (
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::cinder::api': class { 'cinder::api':
default_volume_type => 'BACKEND_1', default_volume_type => 'BACKEND_1',
public_endpoint => "${::openstack_integration::config::base_url}:8776", public_endpoint => "${::openstack_integration::config::base_url}:8776",
service_name => 'httpd', service_name => 'httpd',
@@ -106,28 +106,28 @@ class openstack_integration::cinder (
keymgr_encryption_api_url => $keymgr_encryption_api_url, keymgr_encryption_api_url => $keymgr_encryption_api_url,
keymgr_encryption_auth_url => $keymgr_encryption_auth_url, keymgr_encryption_auth_url => $keymgr_encryption_auth_url,
} }
include ::apache include apache
class { '::cinder::wsgi::apache': class { 'cinder::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/cinder/ssl/private/${::fqdn}.pem", ssl_key => "/etc/cinder/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
workers => 2, workers => 2,
} }
class { '::cinder::quota': } class { 'cinder::quota': }
class { '::cinder::scheduler': } class { 'cinder::scheduler': }
class { '::cinder::scheduler::filter': } class { 'cinder::scheduler::filter': }
class { '::cinder::volume': class { 'cinder::volume':
volume_clear => 'none', volume_clear => 'none',
} }
class { '::cinder::backup': } class { 'cinder::backup': }
class { '::cinder::cron::db_purge': } class { 'cinder::cron::db_purge': }
class { '::cinder::glance': class { 'cinder::glance':
glance_api_servers => "${::openstack_integration::config::base_url}:9292", glance_api_servers => "${::openstack_integration::config::base_url}:9292",
} }
case $backend { case $backend {
'iscsi': { 'iscsi': {
class { '::cinder::setup_test_volume': class { 'cinder::setup_test_volume':
size => '15G', size => '15G',
} }
cinder::backend::iscsi { 'BACKEND_1': cinder::backend::iscsi { 'BACKEND_1':
@@ -150,12 +150,12 @@ class openstack_integration::cinder (
fail("Unsupported backend (${backend})") fail("Unsupported backend (${backend})")
} }
} }
class { '::cinder::backends': class { 'cinder::backends':
enabled_backends => ['BACKEND_1'], enabled_backends => ['BACKEND_1'],
} }
if $cinder_backup == swift { if $cinder_backup == swift {
class { '::cinder::backup::swift': class { 'cinder::backup::swift':
backup_swift_user_domain => 'Default', backup_swift_user_domain => 'Default',
backup_swift_project_domain => 'Default', backup_swift_project_domain => 'Default',
backup_swift_project => 'Default', backup_swift_project => 'Default',

View File

@@ -3,22 +3,22 @@
class openstack_integration::designate { class openstack_integration::designate {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
include ::openstack_integration::bind include openstack_integration::bind
openstack_integration::mq_user { 'designate': openstack_integration::mq_user { 'designate':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
before => Anchor['designate::service::begin'], before => Anchor['designate::service::begin'],
} }
class { '::designate::db::mysql': class { 'designate::db::mysql':
password => 'designate', password => 'designate',
} }
class { '::designate::logging': class { 'designate::logging':
debug => true, debug => true,
} }
class { '::designate': class { 'designate':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => 'rabbit', 'transport' => 'rabbit',
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -28,20 +28,20 @@ class openstack_integration::designate {
}), }),
rabbit_use_ssl => $::openstack_integration::config::ssl, rabbit_use_ssl => $::openstack_integration::config::ssl,
} }
class { '::designate::db': class { 'designate::db':
database_connection => 'mysql+pymysql://designate:designate@127.0.0.1/designate?charset=utf8' database_connection => 'mysql+pymysql://designate:designate@127.0.0.1/designate?charset=utf8'
} }
include '::designate::client' include 'designate::client'
# TODO: Support SSL # TODO: Support SSL
class { '::designate::keystone::auth': class { 'designate::keystone::auth':
password => 'a_big_secret', password => 'a_big_secret',
public_url => "http://${::openstack_integration::config::ip_for_url}:9001", public_url => "http://${::openstack_integration::config::ip_for_url}:9001",
internal_url => "http://${::openstack_integration::config::ip_for_url}:9001", internal_url => "http://${::openstack_integration::config::ip_for_url}:9001",
admin_url => "http://${::openstack_integration::config::ip_for_url}:9001", admin_url => "http://${::openstack_integration::config::ip_for_url}:9001",
} }
class { '::designate::keystone::authtoken': class { 'designate::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -50,7 +50,7 @@ class openstack_integration::designate {
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::designate::api': class { 'designate::api':
listen => "${::openstack_integration::config::ip_for_url}:9001", listen => "${::openstack_integration::config::ip_for_url}:9001",
api_base_uri => "http://${::openstack_integration::config::ip_for_url}:9001", api_base_uri => "http://${::openstack_integration::config::ip_for_url}:9001",
auth_strategy => 'keystone', auth_strategy => 'keystone',
@@ -59,17 +59,17 @@ class openstack_integration::designate {
} }
# IPv6 doesn't work for mdns ? https://bugs.launchpad.net/designate/+bug/1501396 # IPv6 doesn't work for mdns ? https://bugs.launchpad.net/designate/+bug/1501396
class { '::designate::mdns': class { 'designate::mdns':
listen => '127.0.0.1:5354' listen => '127.0.0.1:5354'
} }
class { '::designate::central': } class { 'designate::central': }
class { '::designate::producer': } class { 'designate::producer': }
class { '::designate::worker': } class { 'designate::worker': }
class { '::designate::backend::bind9': class { 'designate::backend::bind9':
rndc_host => '127.0.0.1', rndc_host => '127.0.0.1',
rndc_config_file => '/etc/rndc.conf', rndc_config_file => '/etc/rndc.conf',
rndc_key_file => $::dns::params::rndckeypath, rndc_key_file => $::dns::params::rndckeypath,

View File

@@ -2,38 +2,38 @@
# #
class openstack_integration::ec2api { class openstack_integration::ec2api {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
class { '::ec2api::keystone::auth': class { 'ec2api::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8788", public_url => "${::openstack_integration::config::base_url}:8788",
internal_url => "${::openstack_integration::config::base_url}:8788", internal_url => "${::openstack_integration::config::base_url}:8788",
admin_url => "${::openstack_integration::config::base_url}:8788", admin_url => "${::openstack_integration::config::base_url}:8788",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::ec2api::db::mysql': class { 'ec2api::db::mysql':
password => 'ec2api', password => 'ec2api',
} }
case $::osfamily { case $::osfamily {
'RedHat': { 'RedHat': {
class { '::ec2api::db': class { 'ec2api::db':
database_connection => 'mysql+pymysql://ec2api:ec2api@127.0.0.1/ec2api?charset=utf8', database_connection => 'mysql+pymysql://ec2api:ec2api@127.0.0.1/ec2api?charset=utf8',
} }
class { '::ec2api::db::sync': } class { 'ec2api::db::sync': }
class { '::ec2api::logging': class { 'ec2api::logging':
debug => true, debug => true,
} }
class { '::ec2api': } class { 'ec2api': }
class { '::ec2api::keystone::authtoken': class { 'ec2api::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
auth_url => $::openstack_integration::config::keystone_admin_uri, auth_url => $::openstack_integration::config::keystone_admin_uri,
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
} }
class { '::ec2api::api': class { 'ec2api::api':
keystone_ec2_tokens_url => "${::openstack_integration::config::keystone_auth_uri}/v3/ec2tokens", keystone_ec2_tokens_url => "${::openstack_integration::config::keystone_auth_uri}/v3/ec2tokens",
external_network => 'public', external_network => 'public',
} }
include ::ec2api::metadata include ec2api::metadata
} }
'Debian': { 'Debian': {
warning('ec2api is not yet packaged on Ubuntu systems.') warning('ec2api is not yet packaged on Ubuntu systems.')

View File

@@ -9,8 +9,8 @@ class openstack_integration::glance (
$backend = 'file', $backend = 'file',
) { ) {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
openstack_integration::ssl_key { 'glance': openstack_integration::ssl_key { 'glance':
@@ -30,18 +30,18 @@ class openstack_integration::glance (
before => Anchor['glance::service::begin'], before => Anchor['glance::service::begin'],
} }
class { '::glance::db::mysql': class { 'glance::db::mysql':
password => 'glance', password => 'glance',
} }
include ::glance include glance
include ::glance::client include glance::client
class { '::glance::keystone::auth': class { 'glance::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:9292", public_url => "${::openstack_integration::config::base_url}:9292",
internal_url => "${::openstack_integration::config::base_url}:9292", internal_url => "${::openstack_integration::config::base_url}:9292",
admin_url => "${::openstack_integration::config::base_url}:9292", admin_url => "${::openstack_integration::config::base_url}:9292",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::glance::api::authtoken': class { 'glance::api::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -51,11 +51,11 @@ class openstack_integration::glance (
} }
case $backend { case $backend {
'file': { 'file': {
include ::glance::backend::file include glance::backend::file
$backend_store = ['file'] $backend_store = ['file']
} }
'rbd': { 'rbd': {
class { '::glance::backend::rbd': class { 'glance::backend::rbd':
rbd_store_user => 'openstack', rbd_store_user => 'openstack',
rbd_store_pool => 'glance', rbd_store_pool => 'glance',
} }
@@ -65,7 +65,7 @@ class openstack_integration::glance (
} }
'swift': { 'swift': {
$backend_store = ['swift'] $backend_store = ['swift']
class { '::glance::backend::swift': class { 'glance::backend::swift':
swift_store_user => 'services:glance', swift_store_user => 'services:glance',
swift_store_key => 'a_big_secret', swift_store_key => 'a_big_secret',
swift_store_create_container_on_put => 'True', swift_store_create_container_on_put => 'True',
@@ -79,10 +79,10 @@ class openstack_integration::glance (
} }
$http_store = ['http'] $http_store = ['http']
$glance_stores = concat($http_store, $backend_store) $glance_stores = concat($http_store, $backend_store)
class { '::glance::api::logging': class { 'glance::api::logging':
debug => true, debug => true,
} }
class { '::glance::api': class { 'glance::api':
database_connection => 'mysql+pymysql://glance:glance@127.0.0.1/glance?charset=utf8', database_connection => 'mysql+pymysql://glance:glance@127.0.0.1/glance?charset=utf8',
workers => 2, workers => 2,
stores => $glance_stores, stores => $glance_stores,
@@ -93,7 +93,7 @@ class openstack_integration::glance (
enable_v1_api => false, enable_v1_api => false,
enable_v2_api => true, enable_v2_api => true,
} }
class { '::glance::notify::rabbitmq': class { 'glance::notify::rabbitmq':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,

View File

@@ -8,8 +8,8 @@ class openstack_integration::gnocchi (
$integration_enable = true, $integration_enable = true,
){ ){
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
openstack_integration::ssl_key { 'gnocchi': openstack_integration::ssl_key { 'gnocchi':
@@ -19,22 +19,22 @@ class openstack_integration::gnocchi (
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class { '::gnocchi::logging': class { 'gnocchi::logging':
debug => true, debug => true,
} }
class { '::gnocchi': class { 'gnocchi':
database_connection => 'mysql+pymysql://gnocchi:gnocchi@127.0.0.1/gnocchi?charset=utf8', database_connection => 'mysql+pymysql://gnocchi:gnocchi@127.0.0.1/gnocchi?charset=utf8',
} }
class { '::gnocchi::db::mysql': class { 'gnocchi::db::mysql':
password => 'gnocchi', password => 'gnocchi',
} }
class { '::gnocchi::keystone::auth': class { 'gnocchi::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8041", public_url => "${::openstack_integration::config::base_url}:8041",
internal_url => "${::openstack_integration::config::base_url}:8041", internal_url => "${::openstack_integration::config::base_url}:8041",
admin_url => "${::openstack_integration::config::base_url}:8041", admin_url => "${::openstack_integration::config::base_url}:8041",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::gnocchi::keystone::authtoken': class { 'gnocchi::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -42,21 +42,21 @@ class openstack_integration::gnocchi (
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::gnocchi::api': class { 'gnocchi::api':
enabled => true, enabled => true,
service_name => 'httpd', service_name => 'httpd',
sync_db => true, sync_db => true,
} }
include ::apache include apache
class { '::gnocchi::wsgi::apache': class { 'gnocchi::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/gnocchi/ssl/private/${::fqdn}.pem", ssl_key => "/etc/gnocchi/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
workers => 2, workers => 2,
} }
class { '::gnocchi::client': } class { 'gnocchi::client': }
class { '::gnocchi::metricd': class { 'gnocchi::metricd':
workers => 2, workers => 2,
# because we configure Keystone to expire tokens after 600s, we don't # because we configure Keystone to expire tokens after 600s, we don't
# want to rely on default value in Gnocchi which is 300s to cleanup old data. # want to rely on default value in Gnocchi which is 300s to cleanup old data.
@@ -65,7 +65,7 @@ class openstack_integration::gnocchi (
# Production value (300) shouldn't be changed by default. # Production value (300) shouldn't be changed by default.
cleanup_delay => 10, cleanup_delay => 10,
} }
class { '::gnocchi::storage': class { 'gnocchi::storage':
# NOTE(sileht): Since we set the pipeline interval to 1 minutes instead # NOTE(sileht): Since we set the pipeline interval to 1 minutes instead
# of 10, we must compute metrics more often too, otherwise Aodh alarms will # of 10, we must compute metrics more often too, otherwise Aodh alarms will
# always missed data just because they are 'not yet' computed. # always missed data just because they are 'not yet' computed.
@@ -73,7 +73,7 @@ class openstack_integration::gnocchi (
coordination_url => $::openstack_integration::config::tooz_url, coordination_url => $::openstack_integration::config::tooz_url,
} }
if $integration_enable { if $integration_enable {
class { '::gnocchi::storage::ceph': class { 'gnocchi::storage::ceph':
ceph_username => 'openstack', ceph_username => 'openstack',
ceph_keyring => '/etc/ceph/ceph.client.openstack.keyring', ceph_keyring => '/etc/ceph/ceph.client.openstack.keyring',
manage_cradox => ($::osfamily == 'RedHat'), manage_cradox => ($::osfamily == 'RedHat'),
@@ -82,9 +82,9 @@ class openstack_integration::gnocchi (
# make sure ceph pool exists before running gnocchi (dbsync & services) # make sure ceph pool exists before running gnocchi (dbsync & services)
Exec['create-gnocchi'] -> Exec['gnocchi-db-sync'] Exec['create-gnocchi'] -> Exec['gnocchi-db-sync']
} else { } else {
class { '::gnocchi::storage::file': } class { 'gnocchi::storage::file': }
} }
class { '::gnocchi::statsd': class { 'gnocchi::statsd':
archive_policy_name => 'high', archive_policy_name => 'high',
flush_delay => '100', flush_delay => '100',
# random datas: # random datas:

View File

@@ -8,8 +8,8 @@ class openstack_integration::heat (
$notification_topics = $::os_service_default, $notification_topics = $::os_service_default,
) { ) {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'heat': openstack_integration::mq_user { 'heat':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
@@ -29,7 +29,7 @@ class openstack_integration::heat (
$crt_file = undef $crt_file = undef
} }
class { '::heat::keystone::authtoken': class { 'heat::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -37,10 +37,10 @@ class openstack_integration::heat (
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::heat::logging': class { 'heat::logging':
debug => true, debug => true,
} }
class { '::heat': class { 'heat':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -61,46 +61,46 @@ class openstack_integration::heat (
notification_topics => $notification_topics, notification_topics => $notification_topics,
notification_driver => 'messagingv2', notification_driver => 'messagingv2',
} }
class { '::heat::db::mysql': class { 'heat::db::mysql':
password => 'heat', password => 'heat',
} }
class { '::heat::keystone::auth': class { 'heat::keystone::auth':
password => 'a_big_secret', password => 'a_big_secret',
configure_delegated_roles => true, configure_delegated_roles => true,
public_url => "${::openstack_integration::config::base_url}:8004/v1/%(tenant_id)s", public_url => "${::openstack_integration::config::base_url}:8004/v1/%(tenant_id)s",
internal_url => "${::openstack_integration::config::base_url}:8004/v1/%(tenant_id)s", internal_url => "${::openstack_integration::config::base_url}:8004/v1/%(tenant_id)s",
admin_url => "${::openstack_integration::config::base_url}:8004/v1/%(tenant_id)s", admin_url => "${::openstack_integration::config::base_url}:8004/v1/%(tenant_id)s",
} }
class { '::heat::keystone::domain': class { 'heat::keystone::domain':
domain_password => 'oh_my_no_secret', domain_password => 'oh_my_no_secret',
} }
class { '::heat::client': } class { 'heat::client': }
class { '::heat::api': class { 'heat::api':
service_name => 'httpd', service_name => 'httpd',
} }
include ::apache include apache
class { '::heat::wsgi::apache_api': class { 'heat::wsgi::apache_api':
bind_host => $::openstack_integration::config::host, bind_host => $::openstack_integration::config::host,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_cert => $crt_file, ssl_cert => $crt_file,
ssl_key => $key_file, ssl_key => $key_file,
workers => 2, workers => 2,
} }
class { '::heat::engine': class { 'heat::engine':
auth_encryption_key => '1234567890AZERTYUIOPMLKJHGFDSQ12', auth_encryption_key => '1234567890AZERTYUIOPMLKJHGFDSQ12',
heat_metadata_server_url => "${::openstack_integration::config::base_url}:8000", heat_metadata_server_url => "${::openstack_integration::config::base_url}:8000",
heat_waitcondition_server_url => "${::openstack_integration::config::base_url}:8000/v1/waitcondition", heat_waitcondition_server_url => "${::openstack_integration::config::base_url}:8000/v1/waitcondition",
} }
class { '::heat::api_cfn': class { 'heat::api_cfn':
service_name => 'httpd', service_name => 'httpd',
} }
class { '::heat::wsgi::apache_api_cfn': class { 'heat::wsgi::apache_api_cfn':
bind_host => $::openstack_integration::config::host, bind_host => $::openstack_integration::config::host,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_cert => $crt_file, ssl_cert => $crt_file,
ssl_key => $key_file, ssl_key => $key_file,
workers => 2, workers => 2,
} }
class { '::heat::cron::purge_deleted': } class { 'heat::cron::purge_deleted': }
} }

View File

@@ -1,7 +1,7 @@
class openstack_integration::horizon { class openstack_integration::horizon {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
file { '/etc/openstack-dashboard/ssl': file { '/etc/openstack-dashboard/ssl':
@@ -28,7 +28,7 @@ class openstack_integration::horizon {
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class { '::horizon': class { 'horizon':
secret_key => 'big_secret', secret_key => 'big_secret',
allowed_hosts => $::openstack_integration::config::ip_for_url, allowed_hosts => $::openstack_integration::config::ip_for_url,
listen_ssl => $::openstack_integration::config::ssl, listen_ssl => $::openstack_integration::config::ssl,

View File

@@ -1,7 +1,7 @@
class openstack_integration::ironic { class openstack_integration::ironic {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
openstack_integration::ssl_key { 'ironic': openstack_integration::ssl_key { 'ironic':
@@ -15,10 +15,10 @@ class openstack_integration::ironic {
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
before => Anchor['ironic::service::begin'], before => Anchor['ironic::service::begin'],
} }
class { '::ironic::logging': class { 'ironic::logging':
debug => true, debug => true,
} }
class { '::ironic': class { 'ironic':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -30,16 +30,16 @@ class openstack_integration::ironic {
amqp_sasl_mechanisms => 'PLAIN', amqp_sasl_mechanisms => 'PLAIN',
database_connection => 'mysql+pymysql://ironic:ironic@127.0.0.1/ironic?charset=utf8', database_connection => 'mysql+pymysql://ironic:ironic@127.0.0.1/ironic?charset=utf8',
} }
class { '::ironic::db::mysql': class { 'ironic::db::mysql':
password => 'ironic', password => 'ironic',
} }
class { '::ironic::keystone::auth': class { 'ironic::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:6385", public_url => "${::openstack_integration::config::base_url}:6385",
internal_url => "${::openstack_integration::config::base_url}:6385", internal_url => "${::openstack_integration::config::base_url}:6385",
admin_url => "${::openstack_integration::config::base_url}:6385", admin_url => "${::openstack_integration::config::base_url}:6385",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::ironic::api::authtoken': class { 'ironic::api::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -47,32 +47,32 @@ class openstack_integration::ironic {
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::ironic::keystone::auth_inspector': class { 'ironic::keystone::auth_inspector':
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::ironic::client': } class { 'ironic::client': }
class { '::ironic::api': class { 'ironic::api':
service_name => 'httpd', service_name => 'httpd',
} }
include ::apache include apache
class { '::ironic::wsgi::apache': class { 'ironic::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/ironic/ssl/private/${::fqdn}.pem", ssl_key => "/etc/ironic/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
workers => 2, workers => 2,
} }
class { '::ironic::conductor': class { 'ironic::conductor':
enabled_hardware_types => ['fake-hardware', 'ipmi'], enabled_hardware_types => ['fake-hardware', 'ipmi'],
} }
class { '::ironic::drivers::interfaces': class { 'ironic::drivers::interfaces':
enabled_management_interfaces => ['fake', 'ipmitool'], enabled_management_interfaces => ['fake', 'ipmitool'],
enabled_boot_interfaces => ['fake', 'pxe'], enabled_boot_interfaces => ['fake', 'pxe'],
enabled_deploy_interfaces => ['fake', 'iscsi', 'direct'], enabled_deploy_interfaces => ['fake', 'iscsi', 'direct'],
enabled_power_interfaces => ['fake', 'ipmitool'], enabled_power_interfaces => ['fake', 'ipmitool'],
enabled_vendor_interfaces => ['fake', 'ipmitool', 'no-vendor'], enabled_vendor_interfaces => ['fake', 'ipmitool', 'no-vendor'],
} }
class { '::ironic::drivers::ipmi': } class { 'ironic::drivers::ipmi': }
Rabbitmq_user_permissions['ironic@/'] -> Service<| tag == 'ironic-service' |> Rabbitmq_user_permissions['ironic@/'] -> Service<| tag == 'ironic-service' |>
# Ironic inspector resources # Ironic inspector resources
case $::osfamily { case $::osfamily {
@@ -80,14 +80,14 @@ class openstack_integration::ironic {
warning("Ironic inspector packaging is not ready on ${::osfamily}.") warning("Ironic inspector packaging is not ready on ${::osfamily}.")
} }
'RedHat': { 'RedHat': {
class { '::ironic::inspector::db::mysql': class { 'ironic::inspector::db::mysql':
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::ironic::inspector::authtoken': class { 'ironic::inspector::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::ironic::pxe': } class { 'ironic::pxe': }
class { '::ironic::inspector': class { 'ironic::inspector':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,

View File

@@ -22,8 +22,8 @@ class openstack_integration::keystone (
$token_expiration = '600', $token_expiration = '600',
) { ) {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'keystone': openstack_integration::mq_user { 'keystone':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
@@ -46,19 +46,19 @@ class openstack_integration::keystone (
$enable_credential_setup = false $enable_credential_setup = false
} }
class { '::keystone::client': } class { 'keystone::client': }
class { '::keystone::cron::token_flush': } class { 'keystone::cron::token_flush': }
class { '::keystone::cron::fernet_rotate': class { 'keystone::cron::fernet_rotate':
hour => '*', hour => '*',
minute => '*/30', minute => '*/30',
} }
class { '::keystone::db::mysql': class { 'keystone::db::mysql':
password => 'keystone', password => 'keystone',
} }
class { '::keystone::logging': class { 'keystone::logging':
debug => true, debug => true,
} }
class { '::keystone': class { 'keystone':
database_connection => 'mysql+pymysql://keystone:keystone@127.0.0.1/keystone', database_connection => 'mysql+pymysql://keystone:keystone@127.0.0.1/keystone',
admin_token => 'a_big_token', admin_token => 'a_big_token',
admin_password => 'a_big_secret', admin_password => 'a_big_secret',
@@ -90,29 +90,29 @@ class openstack_integration::keystone (
}), }),
rabbit_use_ssl => $::openstack_integration::config::ssl, rabbit_use_ssl => $::openstack_integration::config::ssl,
} }
class { '::keystone::messaging::amqp': class { 'keystone::messaging::amqp':
amqp_sasl_mechanisms => 'PLAIN', amqp_sasl_mechanisms => 'PLAIN',
} }
include ::apache include apache
class { '::keystone::wsgi::apache': class { 'keystone::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/keystone/ssl/private/${::fqdn}.pem", ssl_key => "/etc/keystone/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
workers => 2, workers => 2,
} }
class { '::keystone::roles::admin': class { 'keystone::roles::admin':
email => 'test@example.tld', email => 'test@example.tld',
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::keystone::endpoint': class { 'keystone::endpoint':
default_domain => $default_domain, default_domain => $default_domain,
public_url => $::openstack_integration::config::keystone_auth_uri, public_url => $::openstack_integration::config::keystone_auth_uri,
admin_url => $::openstack_integration::config::keystone_admin_uri, admin_url => $::openstack_integration::config::keystone_admin_uri,
version => '', version => '',
} }
class { '::openstack_extras::auth_file': class { 'openstack_extras::auth_file':
password => 'a_big_secret', password => 'a_big_secret',
project_domain => 'default', project_domain => 'default',
user_domain => 'default', user_domain => 'default',

View File

@@ -1,7 +1,7 @@
class openstack_integration::memcached { class openstack_integration::memcached {
include ::openstack_integration::config include openstack_integration::config
class { '::memcached': class { 'memcached':
listen_ip => $::openstack_integration::config::host, listen_ip => $::openstack_integration::config::host,
udp_port => 0, udp_port => 0,
} }

View File

@@ -1,7 +1,7 @@
class openstack_integration::mistral { class openstack_integration::mistral {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'mistral': openstack_integration::mq_user { 'mistral':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
@@ -14,15 +14,15 @@ class openstack_integration::mistral {
} }
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class { '::mistral::keystone::authtoken': class { 'mistral::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
www_authenticate_uri => "${::openstack_integration::config::keystone_auth_uri}/v3", www_authenticate_uri => "${::openstack_integration::config::keystone_auth_uri}/v3",
auth_url => $::openstack_integration::config::keystone_auth_uri, auth_url => $::openstack_integration::config::keystone_auth_uri,
} }
class { '::mistral::logging': class { 'mistral::logging':
debug => true, debug => true,
} }
class { '::mistral': class { 'mistral':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -33,20 +33,20 @@ class openstack_integration::mistral {
database_connection => 'mysql+pymysql://mistral:mistral@127.0.0.1/mistral?charset=utf8', database_connection => 'mysql+pymysql://mistral:mistral@127.0.0.1/mistral?charset=utf8',
rabbit_use_ssl => $::openstack_integration::config::ssl, rabbit_use_ssl => $::openstack_integration::config::ssl,
} }
class { '::mistral::keystone::auth': class { 'mistral::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8989/v2", public_url => "${::openstack_integration::config::base_url}:8989/v2",
admin_url => "${::openstack_integration::config::base_url}:8989/v2", admin_url => "${::openstack_integration::config::base_url}:8989/v2",
internal_url => "${::openstack_integration::config::base_url}:8989/v2", internal_url => "${::openstack_integration::config::base_url}:8989/v2",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::mistral::db::mysql': class { 'mistral::db::mysql':
password => 'mistral', password => 'mistral',
} }
class { '::mistral::api': class { 'mistral::api':
service_name => 'httpd', service_name => 'httpd',
} }
include ::apache include apache
class { '::mistral::wsgi::apache': class { 'mistral::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/mistral/ssl/private/${::fqdn}.pem", ssl_key => "/etc/mistral/ssl/private/${::fqdn}.pem",
@@ -54,9 +54,9 @@ class openstack_integration::mistral {
workers => 2, workers => 2,
threads => 1, threads => 1,
} }
class { '::mistral::client': } class { 'mistral::client': }
class { '::mistral::engine': } class { 'mistral::engine': }
class { '::mistral::executor': } class { 'mistral::executor': }
class { '::mistral::event_engine': } class { 'mistral::event_engine': }
} }

View File

@@ -16,14 +16,15 @@ define openstack_integration::mq_user (
$admin = true, $admin = true,
$vhost = '/', $vhost = '/',
) { ) {
include ::openstack_integration::config
include ::openstack_integration::rabbitmq include openstack_integration::config
include openstack_integration::rabbitmq
rabbitmq_user { $name: rabbitmq_user { $name:
admin => $admin, admin => $admin,
password => $password, password => $password,
provider => 'rabbitmqctl', provider => 'rabbitmqctl',
require => Class['::rabbitmq'], require => Class['rabbitmq'],
} }
rabbitmq_user_permissions { "${name}@${vhost}": rabbitmq_user_permissions { "${name}@${vhost}":
@@ -31,16 +32,16 @@ define openstack_integration::mq_user (
write_permission => '.*', write_permission => '.*',
read_permission => '.*', read_permission => '.*',
provider => 'rabbitmqctl', provider => 'rabbitmqctl',
require => Class['::rabbitmq'], require => Class['rabbitmq'],
} }
if $::openstack_integration::config::messaging_default_proto == 'amqp' { if $::openstack_integration::config::messaging_default_proto == 'amqp' {
include ::openstack_integration::qdr include openstack_integration::qdr
qdr_user { $name: qdr_user { $name:
password => $password, password => $password,
provider => 'sasl', provider => 'sasl',
require => Class['::qdr'], require => Class['qdr'],
} }
} }
} }

View File

@@ -1,13 +1,13 @@
class openstack_integration::murano { class openstack_integration::murano {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
rabbitmq_user { ['murano', 'murano_private']: rabbitmq_user { ['murano', 'murano_private']:
admin => true, admin => true,
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
provider => 'rabbitmqctl', provider => 'rabbitmqctl',
require => Class['::rabbitmq'], require => Class['rabbitmq'],
} }
rabbitmq_vhost { '/murano': rabbitmq_vhost { '/murano':
@@ -20,14 +20,14 @@ class openstack_integration::murano {
write_permission => '.*', write_permission => '.*',
read_permission => '.*', read_permission => '.*',
provider => 'rabbitmqctl', provider => 'rabbitmqctl',
require => [ Class['::rabbitmq'], Rabbitmq_vhost['/murano'] ], require => [ Class['rabbitmq'], Rabbitmq_vhost['/murano'] ],
} }
if $::openstack_integration::config::messaging_default_proto == 'amqp' { if $::openstack_integration::config::messaging_default_proto == 'amqp' {
qdr_user { 'murano': qdr_user { 'murano':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
provider => 'sasl', provider => 'sasl',
require => Class['::qdr'], require => Class['qdr'],
} }
} }
@@ -39,13 +39,13 @@ class openstack_integration::murano {
Exec['update-ca-certificates'] ~> Service['murano-api'] Exec['update-ca-certificates'] ~> Service['murano-api']
} }
class { '::murano::db::mysql': class { 'murano::db::mysql':
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::murano::logging': class { 'murano::logging':
debug => true, debug => true,
} }
class { '::murano': class { 'murano':
admin_password => 'a_big_secret', admin_password => 'a_big_secret',
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
@@ -69,13 +69,13 @@ class openstack_integration::murano {
cert_file => $::openstack_integration::params::cert_path, cert_file => $::openstack_integration::params::cert_path,
key_file => "/etc/murano/ssl/private/${::fqdn}.pem", key_file => "/etc/murano/ssl/private/${::fqdn}.pem",
} }
class { '::murano::api': class { 'murano::api':
host => $::openstack_integration::config::host, host => $::openstack_integration::config::host,
} }
class { '::murano::engine': } class { 'murano::engine': }
class { '::murano::keystone::auth': class { 'murano::keystone::auth':
password => 'a_big_secret', password => 'a_big_secret',
public_url => "${::openstack_integration::config::base_url}:8082", public_url => "${::openstack_integration::config::base_url}:8082",
internal_url => "${::openstack_integration::config::base_url}:8082", internal_url => "${::openstack_integration::config::base_url}:8082",

View File

@@ -1,6 +1,6 @@
class openstack_integration::mysql { class openstack_integration::mysql {
class { '::mysql::server': } class { 'mysql::server': }
# FIXME (amoralej) Required until a new release of mariadb-libs is released by RDO # FIXME (amoralej) Required until a new release of mariadb-libs is released by RDO
# Fedora do not have mariadb-libs, so changing only for CentOS # Fedora do not have mariadb-libs, so changing only for CentOS

View File

@@ -30,8 +30,8 @@ class openstack_integration::neutron (
$notification_topics = $::os_service_default, $notification_topics = $::os_service_default,
) { ) {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
openstack_integration::ssl_key { 'neutron': openstack_integration::ssl_key { 'neutron':
@@ -48,7 +48,7 @@ class openstack_integration::neutron (
case $driver { case $driver {
'openvswitch': { 'openvswitch': {
include ::vswitch::ovs include vswitch::ovs
# Functional test for Open-vSwitch: # Functional test for Open-vSwitch:
# create dummy loopback interface to exercise adding a port to a bridge # create dummy loopback interface to exercise adding a port to a bridge
vs_bridge { 'br-ex': vs_bridge { 'br-ex':
@@ -73,7 +73,7 @@ class openstack_integration::neutron (
command => 'ip addr add 172.24.5.1/24 dev br-ex && ip link set br-ex up', command => 'ip addr add 172.24.5.1/24 dev br-ex && ip link set br-ex up',
refreshonly => true, refreshonly => true,
} }
class { '::neutron::agents::ml2::ovs': class { 'neutron::agents::ml2::ovs':
local_ip => '127.0.0.1', local_ip => '127.0.0.1',
tunnel_types => ['vxlan'], tunnel_types => ['vxlan'],
bridge_mappings => ['external:br-ex'], bridge_mappings => ['external:br-ex'],
@@ -88,7 +88,7 @@ class openstack_integration::neutron (
unless => 'ip l show loop0', unless => 'ip l show loop0',
command => 'ip link add name loop0 type dummy && ip addr add 172.24.5.1/24 dev loop0 && ip link set loop0 up', command => 'ip link add name loop0 type dummy && ip addr add 172.24.5.1/24 dev loop0 && ip link set loop0 up',
} }
class { '::neutron::agents::ml2::linuxbridge': class { 'neutron::agents::ml2::linuxbridge':
local_ip => $::ipaddress, local_ip => $::ipaddress,
tunnel_types => ['vxlan'], tunnel_types => ['vxlan'],
physical_interface_mappings => ['external:loop0'], physical_interface_mappings => ['external:loop0'],
@@ -100,10 +100,10 @@ class openstack_integration::neutron (
} }
} }
class { '::neutron::db::mysql': class { 'neutron::db::mysql':
password => 'neutron', password => 'neutron',
} }
class { '::neutron::keystone::auth': class { 'neutron::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:9696", public_url => "${::openstack_integration::config::base_url}:9696",
internal_url => "${::openstack_integration::config::base_url}:9696", internal_url => "${::openstack_integration::config::base_url}:9696",
admin_url => "${::openstack_integration::config::base_url}:9696", admin_url => "${::openstack_integration::config::base_url}:9696",
@@ -115,11 +115,11 @@ class openstack_integration::neutron (
} }
if $l2gw_enabled { if $l2gw_enabled {
if ($::operatingsystem == 'Ubuntu') { if ($::operatingsystem == 'Ubuntu') {
class {'::neutron::services::l2gw': } class {'neutron::services::l2gw': }
$l2gw_provider = 'L2GW:l2gw:networking_l2gw.services.l2gateway.service_drivers.L2gwDriver:default' $l2gw_provider = 'L2GW:l2gw:networking_l2gw.services.l2gateway.service_drivers.L2gwDriver:default'
} }
elsif ($::operatingsystem != 'Ubuntu') { elsif ($::operatingsystem != 'Ubuntu') {
class {'::neutron::services::l2gw': class {'neutron::services::l2gw':
service_providers => ['L2GW:l2gw:networking_l2gw.services.l2gateway.service_drivers.L2gwDriver:default'] service_providers => ['L2GW:l2gw:networking_l2gw.services.l2gateway.service_drivers.L2gwDriver:default']
} }
$l2gw_provider = undef $l2gw_provider = undef
@@ -143,10 +143,10 @@ class openstack_integration::neutron (
$global_physnet_mtu = undef $global_physnet_mtu = undef
} }
class { '::neutron::logging': class { 'neutron::logging':
debug => true, debug => true,
} }
class { '::neutron': class { 'neutron':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -174,8 +174,8 @@ class openstack_integration::neutron (
notification_driver => 'messagingv2', notification_driver => 'messagingv2',
global_physnet_mtu => $global_physnet_mtu, global_physnet_mtu => $global_physnet_mtu,
} }
class { '::neutron::client': } class { 'neutron::client': }
class { '::neutron::keystone::authtoken': class { 'neutron::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -192,7 +192,7 @@ class openstack_integration::neutron (
} else { } else {
$validate_neutron_server_service = false $validate_neutron_server_service = false
} }
class { '::neutron::server': class { 'neutron::server':
database_connection => 'mysql+pymysql://neutron:neutron@127.0.0.1/neutron?charset=utf8', database_connection => 'mysql+pymysql://neutron:neutron@127.0.0.1/neutron?charset=utf8',
sync_db => true, sync_db => true,
api_workers => 2, api_workers => 2,
@@ -203,7 +203,7 @@ class openstack_integration::neutron (
ensure_dr_package => $bgp_dragent_enabled, ensure_dr_package => $bgp_dragent_enabled,
} }
class { '::neutron::plugins::ml2': class { 'neutron::plugins::ml2':
type_drivers => ['vxlan', 'vlan', 'flat'], type_drivers => ['vxlan', 'vlan', 'flat'],
tenant_network_types => ['vxlan', 'vlan', 'flat'], tenant_network_types => ['vxlan', 'vlan', 'flat'],
extension_drivers => 'port_security,qos', extension_drivers => 'port_security,qos',
@@ -222,43 +222,43 @@ class openstack_integration::neutron (
$metadata_protocol = 'http' $metadata_protocol = 'http'
} }
class { '::neutron::agents::metadata': class { 'neutron::agents::metadata':
debug => true, debug => true,
shared_secret => 'a_big_secret', shared_secret => 'a_big_secret',
metadata_workers => 2, metadata_workers => 2,
metadata_host => $metadata_host, metadata_host => $metadata_host,
metadata_protocol => $metadata_protocol, metadata_protocol => $metadata_protocol,
} }
class { '::neutron::agents::l3': class { 'neutron::agents::l3':
interface_driver => $driver, interface_driver => $driver,
debug => true, debug => true,
extensions => 'fwaas_v2', extensions => 'fwaas_v2',
} }
class { '::neutron::agents::dhcp': class { 'neutron::agents::dhcp':
interface_driver => $driver, interface_driver => $driver,
debug => true, debug => true,
} }
class { '::neutron::agents::metering': class { 'neutron::agents::metering':
interface_driver => $driver, interface_driver => $driver,
debug => true, debug => true,
} }
class { '::neutron::server::notifications': class { 'neutron::server::notifications':
auth_url => $::openstack_integration::config::keystone_admin_uri, auth_url => $::openstack_integration::config::keystone_admin_uri,
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::neutron::services::fwaas': class { 'neutron::services::fwaas':
enabled => true, enabled => true,
agent_version => 'v2', agent_version => 'v2',
driver => 'neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.iptables_fwaas_v2.IptablesFwaasDriver', driver => 'neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.iptables_fwaas_v2.IptablesFwaasDriver',
} }
if $bgpvpn_enabled { if $bgpvpn_enabled {
class {'::neutron::services::bgpvpn': class {'neutron::services::bgpvpn':
service_providers => 'BGPVPN:Dummy:networking_bgpvpn.neutron.services.service_drivers.driver_api.BGPVPNDriver:default' service_providers => 'BGPVPN:Dummy:networking_bgpvpn.neutron.services.service_drivers.driver_api.BGPVPNDriver:default'
} }
} }
if $bgp_dragent_enabled { if $bgp_dragent_enabled {
class {'::neutron::agents::bgp_dragent': class {'neutron::agents::bgp_dragent':
bgp_router_id => '127.0.0.1' bgp_router_id => '127.0.0.1'
} }
} }

View File

@@ -30,8 +30,8 @@ class openstack_integration::nova (
$notification_topics = $::os_service_default, $notification_topics = $::os_service_default,
) { ) {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
openstack_integration::ssl_key { 'nova': openstack_integration::ssl_key { 'nova':
@@ -62,13 +62,13 @@ class openstack_integration::nova (
before => Anchor['nova::service::begin'], before => Anchor['nova::service::begin'],
} }
class { '::nova::db::mysql': class { 'nova::db::mysql':
password => 'nova', password => 'nova',
} }
class { '::nova::db::mysql_api': class { 'nova::db::mysql_api':
password => 'nova', password => 'nova',
} }
include ::nova::cell_v2::simple_setup include nova::cell_v2::simple_setup
# NOTE(aschultz): workaround for race condition for discover_hosts being run # NOTE(aschultz): workaround for race condition for discover_hosts being run
# prior to the compute being registered # prior to the compute being registered
@@ -80,13 +80,13 @@ class openstack_integration::nova (
subscribe => Anchor['nova::service::end'], subscribe => Anchor['nova::service::end'],
} }
class { '::nova::keystone::auth': class { 'nova::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8774/v2.1", public_url => "${::openstack_integration::config::base_url}:8774/v2.1",
internal_url => "${::openstack_integration::config::base_url}:8774/v2.1", internal_url => "${::openstack_integration::config::base_url}:8774/v2.1",
admin_url => "${::openstack_integration::config::base_url}:8774/v2.1", admin_url => "${::openstack_integration::config::base_url}:8774/v2.1",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::nova::keystone::authtoken': class { 'nova::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -94,10 +94,10 @@ class openstack_integration::nova (
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::nova::logging': class { 'nova::logging':
debug => true, debug => true,
} }
class { '::nova': class { 'nova':
default_transport_url => $default_transport_url, default_transport_url => $default_transport_url,
notification_transport_url => $notification_transport_url, notification_transport_url => $notification_transport_url,
database_connection => 'mysql+pymysql://nova:nova@127.0.0.1/nova?charset=utf8', database_connection => 'mysql+pymysql://nova:nova@127.0.0.1/nova?charset=utf8',
@@ -109,46 +109,46 @@ class openstack_integration::nova (
notify_on_state_change => 'vm_and_task_state', notify_on_state_change => 'vm_and_task_state',
notification_topics => $notification_topics, notification_topics => $notification_topics,
} }
class { '::nova::api': class { 'nova::api':
api_bind_address => $::openstack_integration::config::host, api_bind_address => $::openstack_integration::config::host,
sync_db => false, sync_db => false,
sync_db_api => false, sync_db_api => false,
service_name => 'httpd', service_name => 'httpd',
nova_metadata_wsgi_enabled => true, nova_metadata_wsgi_enabled => true,
} }
class { '::nova::db::sync': class { 'nova::db::sync':
extra_params => '--debug', extra_params => '--debug',
db_sync_timeout => 600, db_sync_timeout => 600,
} }
class { '::nova::db::sync_api': class { 'nova::db::sync_api':
extra_params => '--debug', extra_params => '--debug',
db_sync_timeout => 600, db_sync_timeout => 600,
} }
class { '::nova::metadata': class { 'nova::metadata':
neutron_metadata_proxy_shared_secret => 'a_big_secret', neutron_metadata_proxy_shared_secret => 'a_big_secret',
} }
include ::apache include apache
class { '::nova::wsgi::apache_api': class { 'nova::wsgi::apache_api':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl_key => "/etc/nova/ssl/private/${::fqdn}.pem", ssl_key => "/etc/nova/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
workers => '2', workers => '2',
} }
class { '::nova::wsgi::apache_metadata': class { 'nova::wsgi::apache_metadata':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl_key => "/etc/nova/ssl/private/${::fqdn}.pem", ssl_key => "/etc/nova/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
workers => '2', workers => '2',
} }
class { '::nova::placement': class { 'nova::placement':
auth_url => $::openstack_integration::config::keystone_admin_uri, auth_url => $::openstack_integration::config::keystone_admin_uri,
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::nova::client': } class { 'nova::client': }
class { '::nova::conductor': } class { 'nova::conductor': }
class { '::nova::cron::archive_deleted_rows': } class { 'nova::cron::archive_deleted_rows': }
if $volume_encryption { if $volume_encryption {
$keymgr_backend = 'castellan.key_manager.barbican_key_manager.BarbicanKeyManager' $keymgr_backend = 'castellan.key_manager.barbican_key_manager.BarbicanKeyManager'
$keymgr_auth_endpoint = "${::openstack_integration::config::keystone_auth_uri}/v3" $keymgr_auth_endpoint = "${::openstack_integration::config::keystone_auth_uri}/v3"
@@ -158,7 +158,7 @@ class openstack_integration::nova (
$keymgr_auth_endpoint = undef $keymgr_auth_endpoint = undef
$barbican_endpoint = undef $barbican_endpoint = undef
} }
class { '::nova::compute': class { 'nova::compute':
vnc_enabled => true, vnc_enabled => true,
instance_usage_audit => true, instance_usage_audit => true,
instance_usage_audit_period => 'hour', instance_usage_audit_period => 'hour',
@@ -166,7 +166,7 @@ class openstack_integration::nova (
barbican_auth_endpoint => $keymgr_auth_endpoint, barbican_auth_endpoint => $keymgr_auth_endpoint,
barbican_endpoint => $barbican_endpoint, barbican_endpoint => $barbican_endpoint,
} }
class { '::nova::compute::libvirt': class { 'nova::compute::libvirt':
libvirt_virt_type => $libvirt_virt_type, libvirt_virt_type => $libvirt_virt_type,
libvirt_cpu_mode => $libvirt_cpu_mode, libvirt_cpu_mode => $libvirt_cpu_mode,
migration_support => true, migration_support => true,
@@ -177,7 +177,7 @@ class openstack_integration::nova (
virtlog_service_name => false, virtlog_service_name => false,
} }
if $libvirt_rbd { if $libvirt_rbd {
class { '::nova::compute::rbd': class { 'nova::compute::rbd':
libvirt_rbd_user => 'openstack', libvirt_rbd_user => 'openstack',
libvirt_rbd_secret_uuid => '7200aea0-2ddd-4a32-aa2a-d49f66ab554c', libvirt_rbd_secret_uuid => '7200aea0-2ddd-4a32-aa2a-d49f66ab554c',
libvirt_rbd_secret_key => 'AQD7kyJQQGoOBhAAqrPAqSopSwPrrfMMomzVdw==', libvirt_rbd_secret_key => 'AQD7kyJQQGoOBhAAqrPAqSopSwPrrfMMomzVdw==',
@@ -189,11 +189,11 @@ class openstack_integration::nova (
# make sure ceph pool exists before running nova-compute # make sure ceph pool exists before running nova-compute
Exec['create-nova'] -> Service['nova-compute'] Exec['create-nova'] -> Service['nova-compute']
} }
class { '::nova::scheduler': } class { 'nova::scheduler': }
class { '::nova::scheduler::filter': } class { 'nova::scheduler::filter': }
class { '::nova::vncproxy': } class { 'nova::vncproxy': }
class { '::nova::network::neutron': class { 'nova::network::neutron':
neutron_auth_url => "${::openstack_integration::config::keystone_admin_uri}/v3", neutron_auth_url => "${::openstack_integration::config::keystone_admin_uri}/v3",
neutron_password => 'a_big_secret', neutron_password => 'a_big_secret',
default_floating_pool => 'public', default_floating_pool => 'public',

View File

@@ -1,7 +1,7 @@
class openstack_integration::panko { class openstack_integration::panko {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
openstack_integration::ssl_key { 'panko': openstack_integration::ssl_key { 'panko':
@@ -11,26 +11,26 @@ class openstack_integration::panko {
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class { '::panko::logging': class { 'panko::logging':
debug => true, debug => true,
} }
include ::panko include panko
class { '::panko::db': class { 'panko::db':
database_connection => 'mysql+pymysql://panko:panko@127.0.0.1/panko?charset=utf8', database_connection => 'mysql+pymysql://panko:panko@127.0.0.1/panko?charset=utf8',
} }
class { '::panko::db::mysql': class { 'panko::db::mysql':
password => 'panko', password => 'panko',
} }
class { '::panko::keystone::auth': class { 'panko::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8977", public_url => "${::openstack_integration::config::base_url}:8977",
internal_url => "${::openstack_integration::config::base_url}:8977", internal_url => "${::openstack_integration::config::base_url}:8977",
admin_url => "${::openstack_integration::config::base_url}:8977", admin_url => "${::openstack_integration::config::base_url}:8977",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::panko::keystone::authtoken': class { 'panko::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -38,7 +38,7 @@ class openstack_integration::panko {
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::panko::api': class { 'panko::api':
sync_db => true, sync_db => true,
enabled => true, enabled => true,
service_name => 'httpd', service_name => 'httpd',
@@ -53,8 +53,8 @@ class openstack_integration::panko {
Package['panko-api'] -> File['/etc/apache2/sites-available/panko-api.conf'] ~> Anchor['panko::install::end'] Package['panko-api'] -> File['/etc/apache2/sites-available/panko-api.conf'] ~> Anchor['panko::install::end']
} }
include ::apache include apache
class { '::panko::wsgi::apache': class { 'panko::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/panko/ssl/private/${::fqdn}.pem", ssl_key => "/etc/panko/ssl/private/${::fqdn}.pem",

View File

@@ -2,10 +2,10 @@
class openstack_integration::placement { class openstack_integration::placement {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
include ::placement include placement
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
openstack_integration::ssl_key { 'placement': openstack_integration::ssl_key { 'placement':
@@ -15,26 +15,26 @@ class openstack_integration::placement {
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class { '::placement::db::mysql': class { 'placement::db::mysql':
password => 'placement', password => 'placement',
} }
if ($::os_package_type == 'debian') { if ($::os_package_type == 'debian') {
class { '::placement::keystone::auth': class { 'placement::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8778", public_url => "${::openstack_integration::config::base_url}:8778",
internal_url => "${::openstack_integration::config::base_url}:8778", internal_url => "${::openstack_integration::config::base_url}:8778",
admin_url => "${::openstack_integration::config::base_url}:8778", admin_url => "${::openstack_integration::config::base_url}:8778",
password => 'a_big_secret', password => 'a_big_secret',
} }
} else { } else {
class { '::placement::keystone::auth': class { 'placement::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8778/placement", public_url => "${::openstack_integration::config::base_url}:8778/placement",
internal_url => "${::openstack_integration::config::base_url}:8778/placement", internal_url => "${::openstack_integration::config::base_url}:8778/placement",
admin_url => "${::openstack_integration::config::base_url}:8778/placement", admin_url => "${::openstack_integration::config::base_url}:8778/placement",
password => 'a_big_secret', password => 'a_big_secret',
} }
} }
class { '::placement::keystone::authtoken': class { 'placement::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -42,16 +42,16 @@ class openstack_integration::placement {
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::placement::logging': class { 'placement::logging':
debug => true, debug => true,
} }
class { '::placement::db': class { 'placement::db':
database_connection => 'mysql+pymysql://placement:placement@127.0.0.1/placement?charset=utf8', database_connection => 'mysql+pymysql://placement:placement@127.0.0.1/placement?charset=utf8',
} }
include ::placement::db::sync include placement::db::sync
include ::apache include apache
if ($::os_package_type != 'debian') { if ($::os_package_type != 'debian') {
class { '::placement::wsgi::apache': class { 'placement::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
api_port => '8778', api_port => '8778',
ssl_key => "/etc/placement/ssl/private/${::fqdn}.pem", ssl_key => "/etc/placement/ssl/private/${::fqdn}.pem",

View File

@@ -19,7 +19,7 @@ class openstack_integration::provision (
$neutron = true, $neutron = true,
){ ){
include ::openstack_integration::config include openstack_integration::config
if $nova { if $nova {
nova_flavor { 'm1.nano': nova_flavor { 'm1.nano':

View File

@@ -1,10 +1,10 @@
class openstack_integration::qdr { class openstack_integration::qdr {
include ::openstack_integration::params include openstack_integration::params
include ::openstack_integration::config include openstack_integration::config
if $::osfamily == 'Debian' { if $::osfamily == 'Debian' {
include ::apt include apt
Class['apt::update'] -> Package<| provider == 'apt' |> Class['apt::update'] -> Package<| provider == 'apt' |>
apt::ppa { 'ppa:qpid/released' : } apt::ppa { 'ppa:qpid/released' : }
package { 'pyngus': package { 'pyngus':
@@ -37,7 +37,7 @@ class openstack_integration::qdr {
require => File['/etc/qpid-dispatch/ssl/private'], require => File['/etc/qpid-dispatch/ssl/private'],
notify => Service['qdrouterd'], notify => Service['qdrouterd'],
} }
class { '::qdr': class { 'qdr':
listener_require_ssl => 'yes', listener_require_ssl => 'yes',
listener_ssl_cert_db => $::openstack_integration::params::ca_bundle_cert_path, listener_ssl_cert_db => $::openstack_integration::params::ca_bundle_cert_path,
listener_ssl_cert_file => $::openstack_integration::params::cert_path, listener_ssl_cert_file => $::openstack_integration::params::cert_path,
@@ -49,7 +49,7 @@ class openstack_integration::qdr {
extra_addresses => $extra_addresses, extra_addresses => $extra_addresses,
} }
} else { } else {
class { '::qdr': class { 'qdr':
listener_addr => $::openstack_integration::config::host, listener_addr => $::openstack_integration::config::host,
listener_port => $::openstack_integration::config::messaging_default_port, listener_port => $::openstack_integration::config::messaging_default_port,
listener_sasl_mech => 'PLAIN', listener_sasl_mech => 'PLAIN',

View File

@@ -1,7 +1,7 @@
class openstack_integration::rabbitmq { class openstack_integration::rabbitmq {
include ::openstack_integration::params include openstack_integration::params
include ::openstack_integration::config include openstack_integration::config
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
file { '/etc/rabbitmq/ssl/private': file { '/etc/rabbitmq/ssl/private':
@@ -16,7 +16,7 @@ class openstack_integration::rabbitmq {
require => File['/etc/rabbitmq/ssl/private'], require => File['/etc/rabbitmq/ssl/private'],
notify => Service['rabbitmq-server'], notify => Service['rabbitmq-server'],
} }
class { '::rabbitmq': class { 'rabbitmq':
package_provider => $::package_provider, package_provider => $::package_provider,
delete_guest_user => true, delete_guest_user => true,
ssl => true, ssl => true,
@@ -28,7 +28,7 @@ class openstack_integration::rabbitmq {
repos_ensure => false, repos_ensure => false,
} }
} else { } else {
class { '::rabbitmq': class { 'rabbitmq':
package_provider => $::package_provider, package_provider => $::package_provider,
delete_guest_user => true, delete_guest_user => true,
environment_variables => $::openstack_integration::config::rabbit_env, environment_variables => $::openstack_integration::config::rabbit_env,
@@ -37,7 +37,7 @@ class openstack_integration::rabbitmq {
} }
rabbitmq_vhost { '/': rabbitmq_vhost { '/':
provider => 'rabbitmqctl', provider => 'rabbitmqctl',
require => Class['::rabbitmq'], require => Class['rabbitmq'],
} }
} }

View File

@@ -1,5 +1,5 @@
class openstack_integration::redis { class openstack_integration::redis {
include ::openstack_integration::config include openstack_integration::config
# NOTE(tobasco): Manually manage redis until arioch/puppet-redis support # NOTE(tobasco): Manually manage redis until arioch/puppet-redis support
# redis 4.x since that is used by Ubuntu Bionic. # redis 4.x since that is used by Ubuntu Bionic.

View File

@@ -10,16 +10,16 @@ class openstack_integration::repos {
'Debian': { 'Debian': {
case $::os_package_type { case $::os_package_type {
'ubuntu': { 'ubuntu': {
include ::apt include apt
class { '::openstack_extras::repo::debian::ubuntu': class { 'openstack_extras::repo::debian::ubuntu':
release => 'train', release => 'train',
package_require => true, package_require => true,
uca_location => pick($::uca_mirror_host, 'http://ubuntu-cloud.archive.canonical.com/ubuntu'), uca_location => pick($::uca_mirror_host, 'http://ubuntu-cloud.archive.canonical.com/ubuntu'),
} }
} }
'debian': { 'debian': {
include ::apt include apt
class { '::openstack_extras::repo::debian::debian': class { 'openstack_extras::repo::debian::debian':
release => 'queens', release => 'queens',
package_require => true, package_require => true,
} }
@@ -47,7 +47,7 @@ class openstack_integration::repos {
$ceph_mirror = pick($::ceph_mirror_host, "http://download.ceph.com/debian-${ceph_version_real}/") $ceph_mirror = pick($::ceph_mirror_host, "http://download.ceph.com/debian-${ceph_version_real}/")
} }
'RedHat': { 'RedHat': {
class { '::openstack_extras::repo::redhat::redhat': class { 'openstack_extras::repo::redhat::redhat':
manage_rdo => false, manage_rdo => false,
manage_epel => false, manage_epel => false,
centos_mirror_url => $::centos_mirror_host, centos_mirror_url => $::centos_mirror_host,
@@ -88,7 +88,7 @@ class openstack_integration::repos {
recurse => true, recurse => true,
matches => [ 'fedora*.repo' ], matches => [ 'fedora*.repo' ],
rmdirs => false, rmdirs => false,
require => Class['::openstack_extras::repo::redhat::redhat'], require => Class['openstack_extras::repo::redhat::redhat'],
} }
} }
} }
@@ -97,7 +97,7 @@ class openstack_integration::repos {
} }
} }
class { '::ceph::repo': class { 'ceph::repo':
enable_sig => $enable_sig, enable_sig => $enable_sig,
enable_epel => $enable_epel, enable_epel => $enable_epel,
ceph_mirror => $ceph_mirror, ceph_mirror => $ceph_mirror,

View File

@@ -8,8 +8,8 @@ class openstack_integration::sahara (
$integration_enable = true, $integration_enable = true,
){ ){
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
openstack_integration::ssl_key { 'sahara': openstack_integration::ssl_key { 'sahara':
@@ -24,20 +24,20 @@ class openstack_integration::sahara (
before => Anchor['sahara::service::begin'], before => Anchor['sahara::service::begin'],
} }
class { '::sahara::db::mysql': class { 'sahara::db::mysql':
password => 'sahara', password => 'sahara',
} }
class { '::sahara::keystone::auth': class { 'sahara::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8386", public_url => "${::openstack_integration::config::base_url}:8386",
internal_url => "${::openstack_integration::config::base_url}:8386", internal_url => "${::openstack_integration::config::base_url}:8386",
admin_url => "${::openstack_integration::config::base_url}:8386", admin_url => "${::openstack_integration::config::base_url}:8386",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::sahara::logging': class { 'sahara::logging':
debug => true, debug => true,
} }
class { '::sahara': class { 'sahara':
host => $::openstack_integration::config::host, host => $::openstack_integration::config::host,
database_connection => 'mysql+pymysql://sahara:sahara@127.0.0.1/sahara?charset=utf8', database_connection => 'mysql+pymysql://sahara:sahara@127.0.0.1/sahara?charset=utf8',
use_ssl => $::openstack_integration::config::ssl, use_ssl => $::openstack_integration::config::ssl,
@@ -53,7 +53,7 @@ class openstack_integration::sahara (
rabbit_use_ssl => $::openstack_integration::config::ssl, rabbit_use_ssl => $::openstack_integration::config::ssl,
amqp_sasl_mechanisms => 'PLAIN', amqp_sasl_mechanisms => 'PLAIN',
} }
class { '::sahara::keystone::authtoken': class { 'sahara::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -65,7 +65,7 @@ class openstack_integration::sahara (
'debian' => $::sahara::params::api_service_name, 'debian' => $::sahara::params::api_service_name,
default => 'httpd', default => 'httpd',
} }
class { '::sahara::service::api': class { 'sahara::service::api':
service_name => $service_name, service_name => $service_name,
} }
if $service_name == 'httpd' { if $service_name == 'httpd' {
@@ -81,8 +81,8 @@ class openstack_integration::sahara (
Package['sahara-api'] -> File['/etc/apache2/sites-available/sahara-api.conf'] ~> Anchor['sahara::install::end'] Package['sahara-api'] -> File['/etc/apache2/sites-available/sahara-api.conf'] ~> Anchor['sahara::install::end']
} }
include ::apache include apache
class { '::sahara::wsgi::apache': class { 'sahara::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/sahara/ssl/private/${::fqdn}.pem", ssl_key => "/etc/sahara/ssl/private/${::fqdn}.pem",
@@ -90,9 +90,9 @@ class openstack_integration::sahara (
workers => 2, workers => 2,
} }
} }
class { '::sahara::service::engine': } class { 'sahara::service::engine': }
class { '::sahara::client': } class { 'sahara::client': }
class { '::sahara::notify': } class { 'sahara::notify': }
if $integration_enable { if $integration_enable {
# create simple sahara templates # create simple sahara templates
@@ -118,7 +118,7 @@ class openstack_integration::sahara (
} }
Nova_flavor<||> -> Sahara_node_group_template<||> Nova_flavor<||> -> Sahara_node_group_template<||>
Class['::sahara::keystone::auth'] -> Sahara_node_group_template<||> Class['sahara::keystone::auth'] -> Sahara_node_group_template<||>
Class['::openstack_extras::auth_file'] -> Sahara_node_group_template<||> Class['openstack_extras::auth_file'] -> Sahara_node_group_template<||>
} }
} }

View File

@@ -13,7 +13,7 @@ define openstack_integration::ssl_key(
$key_owner = $name, $key_owner = $name,
) { ) {
include ::openstack_integration::config include openstack_integration::config
if $key_path == undef { if $key_path == undef {
$_key_path = "/etc/${name}/ssl/private/${::fqdn}.pem" $_key_path = "/etc/${name}/ssl/private/${::fqdn}.pem"

View File

@@ -1,6 +1,6 @@
class openstack_integration::swift { class openstack_integration::swift {
include ::openstack_integration::config include openstack_integration::config
# Setup logging to /var/log/swift # Setup logging to /var/log/swift
# TODO: Move rsyslog implementation to something more generic # TODO: Move rsyslog implementation to something more generic
@@ -46,10 +46,10 @@ class openstack_integration::swift {
} }
} }
class { '::swift': class { 'swift':
swift_hash_path_suffix => 'secrete', swift_hash_path_suffix => 'secrete',
} }
class { '::swift::proxy': class { 'swift::proxy':
proxy_local_net_ip => $::openstack_integration::config::host, proxy_local_net_ip => $::openstack_integration::config::host,
workers => '2', workers => '2',
pipeline => [ pipeline => [
@@ -59,30 +59,30 @@ class openstack_integration::swift {
], ],
node_timeout => 30, node_timeout => 30,
} }
include ::swift::proxy::catch_errors include swift::proxy::catch_errors
include ::swift::proxy::healthcheck include swift::proxy::healthcheck
include ::swift::proxy::proxy_logging include swift::proxy::proxy_logging
# Note (dmsimard): ipv6 parsing in Swift and keystone_authtoken are # Note (dmsimard): ipv6 parsing in Swift and keystone_authtoken are
# different: https://bugs.launchpad.net/swift/+bug/1610064 # different: https://bugs.launchpad.net/swift/+bug/1610064
class { '::swift::proxy::cache': class { 'swift::proxy::cache':
memcache_servers => $::openstack_integration::config::swift_memcached_servers memcache_servers => $::openstack_integration::config::swift_memcached_servers
} }
include ::swift::proxy::tempurl include swift::proxy::tempurl
include ::swift::proxy::ratelimit include swift::proxy::ratelimit
class { '::swift::proxy::authtoken': class { 'swift::proxy::authtoken':
auth_uri => "${::openstack_integration::config::keystone_auth_uri}/v3", auth_uri => "${::openstack_integration::config::keystone_auth_uri}/v3",
auth_url => "${::openstack_integration::config::keystone_admin_uri}/", auth_url => "${::openstack_integration::config::keystone_admin_uri}/",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::swift::proxy::keystone': class { 'swift::proxy::keystone':
operator_roles => ['member', 'admin', 'SwiftOperator'] operator_roles => ['member', 'admin', 'SwiftOperator']
} }
include ::swift::proxy::formpost include swift::proxy::formpost
include ::swift::proxy::staticweb include swift::proxy::staticweb
include ::swift::proxy::container_quotas include swift::proxy::container_quotas
include ::swift::proxy::account_quotas include swift::proxy::account_quotas
include ::swift::proxy::tempauth include swift::proxy::tempauth
class { '::swift::keystone::auth': class { 'swift::keystone::auth':
public_url => "http://${::openstack_integration::config::ip_for_url}:8080/v1/AUTH_%(tenant_id)s", public_url => "http://${::openstack_integration::config::ip_for_url}:8080/v1/AUTH_%(tenant_id)s",
admin_url => "http://${::openstack_integration::config::ip_for_url}:8080", admin_url => "http://${::openstack_integration::config::ip_for_url}:8080",
internal_url => "http://${::openstack_integration::config::ip_for_url}:8080/v1/AUTH_%(tenant_id)s", internal_url => "http://${::openstack_integration::config::ip_for_url}:8080/v1/AUTH_%(tenant_id)s",
@@ -104,8 +104,8 @@ class openstack_integration::swift {
require => File['/srv/node'], require => File['/srv/node'],
} }
} }
include ::swift::ringbuilder include swift::ringbuilder
class { '::swift::storage::all': class { 'swift::storage::all':
storage_local_net_ip => $::openstack_integration::config::host, storage_local_net_ip => $::openstack_integration::config::host,
incoming_chmod => 'Du=rwx,g=rx,o=rx,Fu=rw,g=r,o=r', incoming_chmod => 'Du=rwx,g=rx,o=rx,Fu=rw,g=r,o=r',
outgoing_chmod => 'Du=rwx,g=rx,o=rx,Fu=rw,g=r,o=r', outgoing_chmod => 'Du=rwx,g=rx,o=rx,Fu=rw,g=r,o=r',

View File

@@ -186,8 +186,8 @@ class openstack_integration::tempest (
], ],
) { ) {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
# Install missed dependency for neutron tests # Install missed dependency for neutron tests
# https://github.com/openstack/neutron/blob/master/test-requirements.txt#L20 # https://github.com/openstack/neutron/blob/master/test-requirements.txt#L20
@@ -197,7 +197,7 @@ class openstack_integration::tempest (
} }
} }
class { '::tempest': class { 'tempest':
debug => true, debug => true,
use_stderr => false, use_stderr => false,
log_file => 'tempest.log', log_file => 'tempest.log',

View File

@@ -1,7 +1,7 @@
class openstack_integration::trove { class openstack_integration::trove {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'trove': openstack_integration::mq_user { 'trove':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
@@ -21,10 +21,10 @@ class openstack_integration::trove {
$crt_file = undef $crt_file = undef
} }
class { '::trove::logging': class { 'trove::logging':
debug => true, debug => true,
} }
class { '::trove': class { 'trove':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -44,16 +44,16 @@ class openstack_integration::trove {
amqp_sasl_mechanisms => 'PLAIN', amqp_sasl_mechanisms => 'PLAIN',
nova_proxy_admin_pass => 'a_big_secret', nova_proxy_admin_pass => 'a_big_secret',
} }
class { '::trove::db::mysql': class { 'trove::db::mysql':
password => 'trove', password => 'trove',
} }
class { '::trove::keystone::auth': class { 'trove::keystone::auth':
password => 'a_big_secret', password => 'a_big_secret',
public_url => "${::openstack_integration::config::base_url}:8779/v1.0/%(tenant_id)s", public_url => "${::openstack_integration::config::base_url}:8779/v1.0/%(tenant_id)s",
internal_url => "${::openstack_integration::config::base_url}:8779/v1.0/%(tenant_id)s", internal_url => "${::openstack_integration::config::base_url}:8779/v1.0/%(tenant_id)s",
admin_url => "${::openstack_integration::config::base_url}:8779/v1.0/%(tenant_id)s", admin_url => "${::openstack_integration::config::base_url}:8779/v1.0/%(tenant_id)s",
} }
class { '::trove::keystone::authtoken': class { 'trove::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -61,22 +61,22 @@ class openstack_integration::trove {
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::trove::api': class { 'trove::api':
bind_host => $::openstack_integration::config::host, bind_host => $::openstack_integration::config::host,
workers => 2, workers => 2,
cert_file => $crt_file, cert_file => $crt_file,
key_file => $key_file, key_file => $key_file,
} }
class { '::trove::client': } class { 'trove::client': }
class { '::trove::conductor': class { 'trove::conductor':
debug => true, debug => true,
workers => 2, workers => 2,
auth_url => $::openstack_integration::config::keystone_auth_uri, auth_url => $::openstack_integration::config::keystone_auth_uri,
} }
class { '::trove::taskmanager': class { 'trove::taskmanager':
debug => true, debug => true,
auth_url => $::openstack_integration::config::keystone_auth_uri, auth_url => $::openstack_integration::config::keystone_auth_uri,
use_guestagent_template => false, use_guestagent_template => false,
} }
class { '::trove::quota': } class { 'trove::quota': }
} }

View File

@@ -1,7 +1,7 @@
class openstack_integration::vitrage { class openstack_integration::vitrage {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'vitrage': openstack_integration::mq_user { 'vitrage':
password => 'an_even_bigger_secret', password => 'an_even_bigger_secret',
@@ -16,21 +16,21 @@ class openstack_integration::vitrage {
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class { '::vitrage::db::mysql': class { 'vitrage::db::mysql':
password => 'vitrage', password => 'vitrage',
} }
class { '::vitrage::db': class { 'vitrage::db':
database_connection => 'mysql+pymysql://vitrage:vitrage@127.0.0.1/vitrage?charset=utf8' database_connection => 'mysql+pymysql://vitrage:vitrage@127.0.0.1/vitrage?charset=utf8'
} }
class { '::vitrage::db::sync': } class { 'vitrage::db::sync': }
class { '::vitrage::logging': class { 'vitrage::logging':
debug => true, debug => true,
} }
class { '::vitrage': class { 'vitrage':
# TODO(ansmith): separate transports when bug/1711716 closed # TODO(ansmith): separate transports when bug/1711716 closed
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_notify_proto, 'transport' => $::openstack_integration::config::messaging_notify_proto,
@@ -68,13 +68,13 @@ class openstack_integration::vitrage {
mode => '0766', mode => '0766',
} }
class { '::vitrage::keystone::auth': class { 'vitrage::keystone::auth':
public_url => "${::openstack_integration::config::base_url}:8999", public_url => "${::openstack_integration::config::base_url}:8999",
internal_url => "${::openstack_integration::config::base_url}:8999", internal_url => "${::openstack_integration::config::base_url}:8999",
admin_url => "${::openstack_integration::config::base_url}:8999", admin_url => "${::openstack_integration::config::base_url}:8999",
password => 'a_big_secret', password => 'a_big_secret',
} }
class { '::vitrage::keystone::authtoken': class { 'vitrage::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
user_domain_name => 'Default', user_domain_name => 'Default',
project_domain_name => 'Default', project_domain_name => 'Default',
@@ -82,27 +82,27 @@ class openstack_integration::vitrage {
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::vitrage::api': class { 'vitrage::api':
enabled => true, enabled => true,
service_name => 'httpd', service_name => 'httpd',
} }
include ::apache include apache
class { '::vitrage::wsgi::apache': class { 'vitrage::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/vitrage/ssl/private/${::fqdn}.pem", ssl_key => "/etc/vitrage/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
workers => 2, workers => 2,
} }
class { '::vitrage::auth': class { 'vitrage::auth':
auth_url => $::openstack_integration::config::keystone_auth_uri, auth_url => $::openstack_integration::config::keystone_auth_uri,
auth_password => 'a_big_secret', auth_password => 'a_big_secret',
} }
class { '::vitrage::graph': } class { 'vitrage::graph': }
class { '::vitrage::notifier': class { 'vitrage::notifier':
notifiers => ['nova'], notifiers => ['nova'],
} }
class { '::vitrage::persistor': } class { 'vitrage::persistor': }
class { '::vitrage::client': } class { 'vitrage::client': }
} }

View File

@@ -1,7 +1,7 @@
class openstack_integration::watcher { class openstack_integration::watcher {
include ::openstack_integration::config include openstack_integration::config
include ::openstack_integration::params include openstack_integration::params
openstack_integration::mq_user { 'watcher': openstack_integration::mq_user { 'watcher':
password => 'my_secret', password => 'my_secret',
@@ -15,20 +15,20 @@ class openstack_integration::watcher {
} }
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class { '::watcher::db::mysql': class { 'watcher::db::mysql':
password => 'watcher', password => 'watcher',
} }
class { '::watcher::db': class { 'watcher::db':
database_connection => 'mysql+pymysql://watcher:watcher@127.0.0.1/watcher?charset=utf8', database_connection => 'mysql+pymysql://watcher:watcher@127.0.0.1/watcher?charset=utf8',
} }
# TODO: Support SSL # TODO: Support SSL
class { '::watcher::keystone::auth': class { 'watcher::keystone::auth':
password => 'a_big_secret', password => 'a_big_secret',
public_url => "${::openstack_integration::config::base_url}:9322", public_url => "${::openstack_integration::config::base_url}:9322",
admin_url => "${::openstack_integration::config::base_url}:9322", admin_url => "${::openstack_integration::config::base_url}:9322",
internal_url => "${::openstack_integration::config::base_url}:9322", internal_url => "${::openstack_integration::config::base_url}:9322",
} }
class {'::watcher::keystone::authtoken': class {'watcher::keystone::authtoken':
password => 'a_big_secret', password => 'a_big_secret',
auth_version => 'v3', auth_version => 'v3',
user_domain_name => 'Default', user_domain_name => 'Default',
@@ -37,10 +37,10 @@ class openstack_integration::watcher {
www_authenticate_uri => "${::openstack_integration::config::keystone_auth_uri}/v3", www_authenticate_uri => "${::openstack_integration::config::keystone_auth_uri}/v3",
memcached_servers => $::openstack_integration::config::memcached_servers, memcached_servers => $::openstack_integration::config::memcached_servers,
} }
class { '::watcher::logging': class { 'watcher::logging':
debug => true, debug => true,
} }
class { '::watcher': class { 'watcher':
default_transport_url => os_transport_url({ default_transport_url => os_transport_url({
'transport' => $::openstack_integration::config::messaging_default_proto, 'transport' => $::openstack_integration::config::messaging_default_proto,
'host' => $::openstack_integration::config::host, 'host' => $::openstack_integration::config::host,
@@ -58,7 +58,7 @@ class openstack_integration::watcher {
rabbit_use_ssl => $::openstack_integration::config::ssl, rabbit_use_ssl => $::openstack_integration::config::ssl,
amqp_sasl_mechanisms => 'PLAIN', amqp_sasl_mechanisms => 'PLAIN',
} }
class { '::watcher::api': class { 'watcher::api':
watcher_api_bind_host => $::openstack_integration::config::host, watcher_api_bind_host => $::openstack_integration::config::host,
watcher_client_password => 'a_big_secret', watcher_client_password => 'a_big_secret',
watcher_client_project_domain_name => 'Default', watcher_client_project_domain_name => 'Default',
@@ -69,18 +69,18 @@ class openstack_integration::watcher {
upgrade_db => true, upgrade_db => true,
service_name => 'httpd', service_name => 'httpd',
} }
include ::apache include apache
class { '::watcher::wsgi::apache': class { 'watcher::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_key => "/etc/watcher/ssl/private/${::fqdn}.pem", ssl_key => "/etc/watcher/ssl/private/${::fqdn}.pem",
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
workers => 2, workers => 2,
} }
class { '::watcher::applier': class { 'watcher::applier':
applier_workers => '2', applier_workers => '2',
} }
class { '::watcher::decision_engine': class { 'watcher::decision_engine':
decision_engine_workers => '2', decision_engine_workers => '2',
} }

View File

@@ -1,6 +1,6 @@
class openstack_integration::zaqar { class openstack_integration::zaqar {
include ::openstack_integration::config include openstack_integration::config
if $::openstack_integration::config::ssl { if $::openstack_integration::config::ssl {
openstack_integration::ssl_key { 'zaqar': openstack_integration::ssl_key { 'zaqar':
@@ -9,54 +9,54 @@ class openstack_integration::zaqar {
} }
Exec['update-ca-certificates'] ~> Service['httpd'] Exec['update-ca-certificates'] ~> Service['httpd']
} }
class {'::zaqar::logging': class {'zaqar::logging':
debug => true, debug => true,
} }
class { '::zaqar::db::mysql': class { 'zaqar::db::mysql':
password => 'zaqar', password => 'zaqar',
} }
class { '::zaqar::keystone::auth': class { 'zaqar::keystone::auth':
password => 'a_big_secret', password => 'a_big_secret',
roles => ['admin', 'ResellerAdmin'], roles => ['admin', 'ResellerAdmin'],
public_url => "${::openstack_integration::config::base_url}:8888", public_url => "${::openstack_integration::config::base_url}:8888",
internal_url => "${::openstack_integration::config::base_url}:8888", internal_url => "${::openstack_integration::config::base_url}:8888",
admin_url => "${::openstack_integration::config::base_url}:8888", admin_url => "${::openstack_integration::config::base_url}:8888",
} }
class { '::zaqar::keystone::auth_websocket': class { 'zaqar::keystone::auth_websocket':
password => 'a_big_secret', password => 'a_big_secret',
public_url => "ws://${::openstack_integration::config::ip_for_url}:8888", public_url => "ws://${::openstack_integration::config::ip_for_url}:8888",
internal_url => "ws://${::openstack_integration::config::ip_for_url}:8888", internal_url => "ws://${::openstack_integration::config::ip_for_url}:8888",
admin_url => "ws://${::openstack_integration::config::ip_for_url}:8888", admin_url => "ws://${::openstack_integration::config::ip_for_url}:8888",
} }
class {'::zaqar::management::sqlalchemy': class {'zaqar::management::sqlalchemy':
uri => 'mysql+pymysql://zaqar:zaqar@127.0.0.1/zaqar?charset=utf8', uri => 'mysql+pymysql://zaqar:zaqar@127.0.0.1/zaqar?charset=utf8',
} }
class {'::zaqar::messaging::swift': class {'zaqar::messaging::swift':
auth_url => "${::openstack_integration::config::keystone_auth_uri}/v3", auth_url => "${::openstack_integration::config::keystone_auth_uri}/v3",
uri => 'swift://zaqar:a_big_secret@/services', uri => 'swift://zaqar:a_big_secret@/services',
} }
class {'::zaqar::keystone::authtoken': class {'zaqar::keystone::authtoken':
auth_url => $::openstack_integration::config::keystone_admin_uri, auth_url => $::openstack_integration::config::keystone_admin_uri,
www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri, www_authenticate_uri => $::openstack_integration::config::keystone_auth_uri,
password => 'a_big_secret', password => 'a_big_secret',
} }
class {'::zaqar': class {'zaqar':
unreliable => true, unreliable => true,
management_store => 'sqlalchemy', management_store => 'sqlalchemy',
message_store => 'swift', message_store => 'swift',
} }
class {'::zaqar::server': class {'zaqar::server':
service_name => 'httpd', service_name => 'httpd',
} }
include ::apache include apache
class { '::zaqar::wsgi::apache': class { 'zaqar::wsgi::apache':
bind_host => $::openstack_integration::config::ip_for_url, bind_host => $::openstack_integration::config::ip_for_url,
ssl => $::openstack_integration::config::ssl, ssl => $::openstack_integration::config::ssl,
ssl_cert => $::openstack_integration::params::cert_path, ssl_cert => $::openstack_integration::params::cert_path,
ssl_key => "/etc/zaqar/ssl/private/${::fqdn}.pem", ssl_key => "/etc/zaqar/ssl/private/${::fqdn}.pem",
workers => 2, workers => 2,
} }
include ::zaqar::db::sync include zaqar::db::sync
# run a second instance using websockets, the Debian system does # run a second instance using websockets, the Debian system does
# not support the use of services to run a second instance. # not support the use of services to run a second instance.
if $::osfamily == 'RedHat' { if $::osfamily == 'RedHat' {

View File

@@ -202,7 +202,7 @@ fi
set +e set +e
if [ "${MANAGE_REPOS}" = true ]; then if [ "${MANAGE_REPOS}" = true ]; then
print_header 'Install repos' print_header 'Install repos'
$SUDO $PUPPET_FULL_PATH apply $PUPPET_ARGS -e "include ::openstack_integration::repos" $SUDO $PUPPET_FULL_PATH apply $PUPPET_ARGS -e "include openstack_integration::repos"
RESULT=$? RESULT=$?
if [ $RESULT -ne 0 ] && [ $RESULT -ne 2 ]; then if [ $RESULT -ne 0 ] && [ $RESULT -ne 2 ]; then
print_header 'Puppet failed to install repositories.' print_header 'Puppet failed to install repositories.'