diff options
Diffstat (limited to 'manifests')
-rw-r--r-- | manifests/certmonger/ca/local.pp | 10 | ||||
-rw-r--r-- | manifests/network/contrail/analytics.pp | 109 | ||||
-rw-r--r-- | manifests/network/contrail/config.pp | 120 | ||||
-rw-r--r-- | manifests/network/contrail/control.pp | 85 | ||||
-rw-r--r-- | manifests/network/contrail/database.pp | 15 | ||||
-rw-r--r-- | manifests/network/contrail/webui.pp | 78 | ||||
-rw-r--r-- | manifests/profile/base/manila.pp | 50 | ||||
-rw-r--r-- | manifests/profile/base/manila/api.pp | 30 | ||||
-rw-r--r-- | manifests/profile/base/manila/scheduler.pp | 19 | ||||
-rw-r--r-- | manifests/profile/base/manila/share.pp | 3 | ||||
-rw-r--r-- | manifests/profile/base/mistral.pp | 9 | ||||
-rw-r--r-- | manifests/profile/base/swift/proxy.pp | 2 | ||||
-rw-r--r-- | manifests/profile/base/swift/ringbuilder.pp | 2 | ||||
-rw-r--r-- | manifests/profile/base/swift/storage.pp | 2 | ||||
-rw-r--r-- | manifests/profile/base/ui.pp | 2 | ||||
-rw-r--r-- | manifests/profile/pacemaker/manila.pp | 56 | ||||
-rw-r--r-- | manifests/ui.pp | 108 |
17 files changed, 426 insertions, 274 deletions
diff --git a/manifests/certmonger/ca/local.pp b/manifests/certmonger/ca/local.pp index ea08dec..b7b7328 100644 --- a/manifests/certmonger/ca/local.pp +++ b/manifests/certmonger/ca/local.pp @@ -29,9 +29,11 @@ class tripleo::certmonger::ca::local( $extract_cmd = "openssl pkcs12 -in ${ca_pkcs12} -out ${ca_pem} -nokeys -nodes -passin pass:''" $trust_ca_cmd = 'update-ca-trust extract' exec { 'extract-and-trust-ca': - command => "${extract_cmd} && ${trust_ca_cmd}", - path => '/usr/bin', - creates => $ca_pem, - require => Package['certmonger'], + command => "${extract_cmd} && ${trust_ca_cmd}", + path => '/usr/bin', + creates => $ca_pem, + tries => 5, + try_sleep => 1, + require => Service['certmonger'], } } diff --git a/manifests/network/contrail/analytics.pp b/manifests/network/contrail/analytics.pp index 57fd815..4359a43 100644 --- a/manifests/network/contrail/analytics.pp +++ b/manifests/network/contrail/analytics.pp @@ -19,129 +19,138 @@ # # == Parameters: # +# [*host_ip*] +# (required) host IP address of Analytics +# String (IPv4) value. +# # [*admin_password*] -# (required) admin password +# (optional) admin password # String value. +# Defaults to hiera('contrail::admin_password') # # [*admin_tenant_name*] -# (required) admin tenant name. +# (optional) admin tenant name. # String value. +# Defaults to hiera('contrail::admin_tenant_name') # # [*admin_token*] -# (required) admin token +# (optional) admin token # String value. +# Defaults to hiera('contrail::admin_token') # # [*admin_user*] -# (required) admin user name. +# (optional) admin user name. # String value. +# Defaults to hiera('contrail::admin_user') # # [*auth_host*] -# (required) keystone server ip address +# (optional) keystone server ip address # String (IPv4) value. -# -# [*cassandra_server_list*] -# (required) List IPs+port of Cassandra servers -# Array of strings value. -# -# [*disc_server_ip*] -# (required) IPv4 address of discovery server. -# String (IPv4) value. -# -# [*host_ip*] -# (required) host IP address of Analytics -# String (IPv4) value. -# -# [*kafka_broker_list*] -# (required) List IPs+port of kafka servers -# Array of strings value. -# -# [*zk_server_ip*] -# (required) List IPs+port of Zookeeper servers -# Array of strings value. +# Defaults to hiera('contrail::auth_host') # # [*auth_port*] -# (required) keystone port. +# (optional) keystone port. # Integer value. -# Defaults to 35357. +# Defaults to hiera('contrail::auth_port') # # [*auth_protocol*] -# (required) authentication protocol. +# (optional) authentication protocol. # String value. -# Defaults to http. +# Defaults to hiera('contrail::auth_protocol') +# +# [*cassandra_server_list*] +# (optional) List IPs+port of Cassandra servers +# Array of strings value. +# Defaults to hiera('contrail::cassandra_server_list') # # [*collector_http_server_port*] -# (required) Collector http port +# (optional) Collector http port # Integer value. # Defaults to 8089 # # [*collector_sandesh_port*] -# (required) Collector sandesh port +# (optional) Collector sandesh port # Integer value. # Defaults to 8086 # +# [*disc_server_ip*] +# (optional) IPv4 address of discovery server. +# String (IPv4) value. +# Defaults to hiera('contrail::disc_server_ip') +# # [*disc_server_port*] -# (required) port Discovery server listens on. +# (optional) port Discovery server listens on. # Integer value. -# Defaults to 5998 +# Defaults to hiera('contrail::disc_server_port') # # [*http_server_port*] -# (required) Analytics http port +# (optional) Analytics http port # Integer value. # Defaults to 8090 # # [*insecure*] -# (required) insecure mode. +# (optional) insecure mode. # Boolean value. -# Defaults to false +# Defaults to falsehiera('contrail::insecure') +# +# [*kafka_broker_list*] +# (optional) List IPs+port of kafka servers +# Array of strings value. +# Defaults to hiera('contrail::kafka_broker_list') +# +# [*memcached_servers*] +# (optional) IPv4 address of memcached servers +# String (IPv4) value + port +# Defaults to hiera('contrail::memcached_server') # # [*redis_server*] -# (required) IPv4 address of redis server. +# (optional) IPv4 address of redis server. # String (IPv4) value. # Defaults to '127.0.0.1'. # # [*redis_server_port*] -# (required) port Redis server listens on. +# (optional) port Redis server listens on. # Integer value. # Defaults to 6379 # # [*rest_api_ip*] -# (required) IP address Analytics rest interface listens on +# (optional) IP address Analytics rest interface listens on # String (IPv4) value. # Defaults to '0.0.0.0' # # [*rest_api_port*] -# (required) Analytics rest port +# (optional) Analytics rest port # Integer value. # Defaults to 8081 # -# [*memcached_servers*] -# (optional) IPv4 address of memcached servers -# String (IPv4) value + port -# Defaults to '127.0.0.1:12111' +# [*zk_server_ip*] +# (optional) List IPs+port of Zookeeper servers +# Array of strings value. +# Defaults to hiera('contrail::zk_server_ip') # class tripleo::network::contrail::analytics( + $host_ip, $admin_password = hiera('contrail::admin_password'), $admin_tenant_name = hiera('contrail::admin_tenant_name'), $admin_token = hiera('contrail::admin_token'), $admin_user = hiera('contrail::admin_user'), $auth_host = hiera('contrail::auth_host'), - $cassandra_server_list = hiera('contrail::cassandra_server_list'), - $disc_server_ip = hiera('contrail::disc_server_ip'), - $host_ip, - $kafka_broker_list = hiera('contrail::kafka_broker_list'), - $zk_server_ip = hiera('contrail::zk_server_ip'), $auth_port = hiera('contrail::auth_port'), $auth_protocol = hiera('contrail::auth_protocol'), + $cassandra_server_list = hiera('contrail::cassandra_server_list'), $collector_http_server_port = 8089, $collector_sandesh_port = 8086, + $disc_server_ip = hiera('contrail::disc_server_ip'), $disc_server_port = hiera('contrail::disc_server_port'), $http_server_port = 8090, $insecure = hiera('contrail::insecure'), + $kafka_broker_list = hiera('contrail::kafka_broker_list'), + $memcached_servers = hiera('contrail::memcached_server'), $redis_server = '127.0.0.1', $redis_server_port = 6379, $rest_api_ip = '0.0.0.0', $rest_api_port = 8081, - $memcached_servers = hiera('contrail::memcached_server'), + $zk_server_ip = hiera('contrail::zk_server_ip'), ) { class {'::contrail::keystone': diff --git a/manifests/network/contrail/config.pp b/manifests/network/contrail/config.pp index 9a9e9bd..7b9c85f 100644 --- a/manifests/network/contrail/config.pp +++ b/manifests/network/contrail/config.pp @@ -19,34 +19,6 @@ # # == Parameters: # -# [*admin_password*] -# (required) admin password -# String value. -# -# [*admin_tenant_name*] -# (required) admin tenant name. -# String value. -# -# [*admin_token*] -# (required) admin token -# String value. -# -# [*admin_user*] -# (required) admin user name. -# String value. -# -# [*auth_host*] -# (required) keystone server ip address -# String (IPv4) value. -# -# [*cassandra_server_list*] -# (required) List IPs+port of Cassandra servers -# Array of strings value. -# -# [*disc_server_ip*] -# (required) IPv4 address of discovery server. -# String (IPv4) value. -# # [*ifmap_password*] # (required) ifmap password # String value. @@ -63,71 +35,107 @@ # (required) IPv4 address of rabbit server. # String (IPv4) value. # -# [*zk_server_ip*] -# (required) List IPs+port of Zookeeper servers -# Array of strings value. +# [*admin_password*] +# (optional) admin password +# String value. +# Defaults to hiera('contrail::admin_password') +# +# [*admin_tenant_name*] +# (optional) admin tenant name. +# String value. +# Defaults to hiera('contrail::admin_tenant_name') +# +# [*admin_token*] +# (optional) admin token +# String value. +# Defaults to hiera('contrail::admin_token') +# +# [*admin_user*] +# (optional) admin user name. +# String value. +# Defaults to hiera('contrail::admin_user') # # [*auth*] -# (required) Authentication method. -# Defaults to 'keystone'. +# (optional) Authentication method. +# Defaults to hiera('contrail::auth') +# +# [*auth_host*] +# (optional) keystone server ip address +# String (IPv4) value. +# Defaults to hiera('contrail::auth_host') # # [*auth_port*] -# (required) keystone port. -# Defaults to 35357. +# (optional) keystone port. +# Defaults to hiera('contrail::auth_port') # # [*auth_protocol*] -# (required) authentication protocol. -# Defaults to http. +# (optional) authentication protocol. +# Defaults to hiera('contrail::auth_protocol') +# +# [*cassandra_server_list*] +# (optional) List IPs+port of Cassandra servers +# Array of strings value. +# Defaults to hiera('contrail::cassandra_server_list') +# +# [*disc_server_ip*] +# (optional) IPv4 address of discovery server. +# String (IPv4) value. +# Defaults to hiera('contrail::disc_server_ip') # # [*insecure*] -# (required) insecure mode. -# Defaults to false +# (optional) insecure mode. +# Defaults to hiera('contrail::insecure') # # [*listen_ip_address*] -# (required) IP address to listen on. +# (optional) IP address to listen on. # String (IPv4) value. -# Defaults to '0.0.0.0'. +# Defaults to '0.0.0.0' # # [*listen_port*] -# (required) Listen port for config-api -# Defaults to 8082. +# (optional) Listen port for config-api +# Defaults to 8082 # # [*memcached_servers*] # (optional) IPv4 address of memcached servers # String (IPv4) value + port -# Defaults to '127.0.0.1:12111' +# Defaults to hiera('contrail::memcached_server') # # [*multi_tenancy*] -# (required) Defines if mutli-tenancy is enabled. -# Defaults to 'true'. +# (optional) Defines if mutli-tenancy is enabled. +# Defaults to hiera('contrail::multi_tenancy') # # [*redis_server*] -# (required) IPv4 address of redis server. +# (optional) IPv4 address of redis server. # String (IPv4) value. -# Defaults to '127.0.0.1'. +# Defaults to '127.0.0.1' +# +# [*zk_server_ip*] +# (optional) List IPs+port of Zookeeper servers +# Array of strings value. +# Defaults to hiera('contrail::zk_server_ip') # class tripleo::network::contrail::config( - $admin_password = hiera('contrail::admin_password'), - $admin_tenant_name = hiera('contrail::admin_tenant_name'), - $admin_token = hiera('contrail::admin_token'), - $admin_user = hiera('contrail::admin_user'), - $auth_host = hiera('contrail::auth_host'), - $cassandra_server_list = hiera('contrail::cassandra_server_list'), - $disc_server_ip = hiera('contrail::disc_server_ip'), $ifmap_password, $ifmap_server_ip, $ifmap_username, $rabbit_server, - $zk_server_ip = hiera('contrail::zk_server_ip'), + $admin_password = hiera('contrail::admin_password'), + $admin_tenant_name = hiera('contrail::admin_tenant_name'), + $admin_token = hiera('contrail::admin_token'), + $admin_user = hiera('contrail::admin_user'), $auth = hiera('contrail::auth'), + $auth_host = hiera('contrail::auth_host'), $auth_port = hiera('contrail::auth_port'), $auth_protocol = hiera('contrail::auth_protocol'), + $cassandra_server_list = hiera('contrail::cassandra_server_list'), + $disc_server_ip = hiera('contrail::disc_server_ip'), $insecure = hiera('contrail::insecure'), $listen_ip_address = '0.0.0.0', $listen_port = 8082, $memcached_servers = hiera('contrail::memcached_server'), $multi_tenancy = hiera('contrail::multi_tenancy'), $redis_server = '127.0.0.1', + $zk_server_ip = hiera('contrail::zk_server_ip'), ) { validate_ip_address($listen_ip_address) diff --git a/manifests/network/contrail/control.pp b/manifests/network/contrail/control.pp index 8e1f4b8..2e50108 100644 --- a/manifests/network/contrail/control.pp +++ b/manifests/network/contrail/control.pp @@ -19,84 +19,83 @@ # # == Parameters: # +# [*host_ip*] +# (required) host IP address of Control +# String (IPv4) value. +# +# [*ifmap_password*] +# (required) ifmap password +# String value. +# +# [*ifmap_username*] +# (optional) ifmap username +# String value. +# Defaults to hiera('contrail::ifmap_username'), +# # [*admin_password*] -# (required) admin password +# (optional) admin password # String value. +# Defaults to hiera('contrail::admin_password'), # # [*admin_tenant_name*] -# (required) admin tenant name. +# (optional) admin tenant name. # String value. +# Defaults to hiera('contrail::admin_tenant_name'), # # [*admin_token*] -# (required) admin token +# (optional) admin token # String value. +# Defaults to hiera('contrail::admin_token'), # # [*admin_user*] -# (required) admin user name. +# (optional) admin user name. # String value. +# Defaults to hiera('contrail::admin_user'), # # [*auth_host*] -# (required) keystone server ip address +# (optional) keystone server ip address # String (IPv4) value. -# -# [*disc_server_ip*] -# (required) IPv4 address of discovery server. -# String (IPv4) value. -# -# [*host_ip*] -# (required) host IP address of Control -# String (IPv4) value. -# -# [*ifmap_password*] -# (required) ifmap password -# String value. -# -# [*ifmap_server_ip*] -# (required) ifmap server ip address. -# String value. -# -# [*ifmap_username*] -# (required) ifmap username -# String value. +# Defaults to hiera('contrail::auth_host'), # # [*auth_port*] -# (required) keystone port. -# Defaults to 35357. +# (optional) keystone port. +# Defaults to hiera('contrail::auth_port'), # # [*auth_protocol*] -# (required) authentication protocol. -# Defaults to http. +# (optional) authentication protocol. +# Defaults to hiera('contrail::auth_protocol'), +# +# [*disc_server_ip*] +# (optional) IPv4 address of discovery server. +# String (IPv4) value. +# Defaults to hiera('contrail::disc_server_ip'), # # [*disc_server_port*] -# (required) port Discovery server listens on. +# (optional) port Discovery server listens on. # Integer value. -# Defaults to 5998 +# Defaults to hiera('contrail::disc_server_port'), # # [*insecure*] -# (required) insecure mode. -# Defaults to false +# (optional) insecure mode. +# Defaults to hiera('contrail::insecure'), # # [*memcached_servers*] # (optional) IPv4 address of memcached servers # String (IPv4) value + port -# Defaults to '127.0.0.1:12111' -# -# [*multi_tenancy*] -# (required) Defines if mutli-tenancy is enabled. -# Defaults to 'true'. +# Defaults to hiera('contrail::memcached_servers'), # class tripleo::network::contrail::control( + $host_ip, + $ifmap_password, + $ifmap_username, + $admin_password = hiera('contrail::admin_password'), $admin_tenant_name = hiera('contrail::admin_tenant_name'), $admin_token = hiera('contrail::admin_token'), - $admin_password = hiera('contrail::admin_password'), $admin_user = hiera('contrail::admin_user'), $auth_host = hiera('contrail::auth_host'), - $disc_server_ip = hiera('contrail::disc_server_ip'), - $host_ip, - $ifmap_password, - $ifmap_username, $auth_port = hiera('contrail::auth_port'), $auth_protocol = hiera('contrail::auth_protocol'), + $disc_server_ip = hiera('contrail::disc_server_ip'), $disc_server_port = hiera('contrail::disc_server_port'), $insecure = hiera('contrail::insecure'), $memcached_servers = hiera('contrail::memcached_server'), diff --git a/manifests/network/contrail/database.pp b/manifests/network/contrail/database.pp index 5fdfb97..58f2670 100644 --- a/manifests/network/contrail/database.pp +++ b/manifests/network/contrail/database.pp @@ -19,22 +19,23 @@ # # == Parameters: # -# [*disc_server_ip*] -# (required) IPv4 address of discovery server. -# String (IPv4) value. -# # [*host_ip*] # (required) host IP address of Database node # String (IPv4) value. # +# [*disc_server_ip*] +# (optional) IPv4 address of discovery server. +# String (IPv4) value. +# Defaults to hiera('contrail::disc_server_ip') +# # [*disc_server_port*] -# (required) port Discovery server listens on. +# (optional) port Discovery server listens on. # Integer value. -# Defaults to 5998 +# Defaults to hiera('contrail::disc_server_port') # class tripleo::network::contrail::database( - $disc_server_ip = hiera('contrail::disc_server_ip'), $host_ip, + $disc_server_ip = hiera('contrail::disc_server_ip'), $disc_server_port = hiera('contrail::disc_server_port'), ) { diff --git a/manifests/network/contrail/webui.pp b/manifests/network/contrail/webui.pp index f289923..0b308a4 100644 --- a/manifests/network/contrail/webui.pp +++ b/manifests/network/contrail/webui.pp @@ -19,84 +19,90 @@ # # == Parameters: # +# [*contrail_analytics_vip*] +# (required) VIP of Contrail Analytics +# String (IPv4) value. +# +# [*contrail_config_vip*] +# (required) VIP of Contrail Config +# String (IPv4) value. +# +# [*neutron_vip*] +# (required) VIP of Neutron +# String (IPv4) value. +# # [*admin_password*] -# (required) admin password +# (optional) admin password # String value. +# Defaults to hiera('contrail::admin_password') # # [*admin_tenant_name*] -# (required) admin tenant name. +# (optional) admin tenant name. # String value. +# Defaults to hiera('contrail::admin_tenant_name') # # [*admin_token*] -# (required) admin token +# (optional) admin token # String value. +# Defaults to hiera('contrail::admin_token') # # [*admin_user*] -# (required) admin user name. +# (optional) admin user name. # String value. +# Defaults to hiera('contrail::admin_user') # # [*auth_host*] -# (required) keystone server ip address +# (optional) keystone server ip address # String (IPv4) value. +# Defaults to hiera('contrail::auth_host') # # [*cassandra_server_list*] -# (required) List IPs+port of Cassandra servers +# (optional) List IPs+port of Cassandra servers # Array of strings value. -# -# [*contrail_analytics_vip*] -# (required) VIP of Contrail Analytics -# String (IPv4) value. -# -# [*contrail_config_vip*] -# (required) VIP of Contrail Config -# String (IPv4) value. -# -# [*neutron_vip*] -# (required) VIP of Neutron -# String (IPv4) value. +# Defaults to hiera('contrail::cassandra_server_list') # # [*contrail_webui_http_port*] -# (required) Webui HTTP Port +# (optional) Webui HTTP Port # Integer value. # Defaults to 8080 # # [*contrail_webui_https_port*] -# (required) Webui HTTPS Port +# (optional) Webui HTTPS Port # Integer value. # Defaults to 8143 # # [*redis_ip*] -# (required) IP of Redis +# (optional) IP of Redis # String (IPv4) value. # Defaults to '127.0.0.1' # class tripleo::network::contrail::webui( + $contrail_analytics_vip, + $contrail_config_vip, + $neutron_vip, $admin_password = hiera('contrail::admin_password'), $admin_tenant_name = hiera('contrail::admin_tenant_name'), $admin_token = hiera('contrail::admin_token'), $admin_user = hiera('contrail::admin_user'), $auth_host = hiera('contrail::auth_host'), $cassandra_server_list = hiera('contrail::cassandra_server_list'), - $contrail_analytics_vip, - $contrail_config_vip, - $neutron_vip, $contrail_webui_http_port = 8080, $contrail_webui_https_port = 8143, $redis_ip = '127.0.0.1', ) { class {'::contrail::webui': - openstack_vip => $auth_host, - contrail_config_vip => $contrail_config_vip, - contrail_analytics_vip => $contrail_analytics_vip, - neutron_vip => $neutron_vip, - cassandra_ip => $cassandra_server_list, - redis_ip => $redis_ip, - contrail_webui_http_port => $contrail_webui_http_port, - contrail_webui_https_port => $contrail_webui_https_port, - admin_user => $admin_user, - admin_password => $admin_password, - admin_token => $admin_token, - admin_tenant_name => $admin_tenant_name, + openstack_vip => $auth_host, + contrail_config_vip => $contrail_config_vip, + contrail_analytics_vip => $contrail_analytics_vip, + neutron_vip => $neutron_vip, + cassandra_ip => $cassandra_server_list, + redis_ip => $redis_ip, + contrail_webui_http_port => $contrail_webui_http_port, + contrail_webui_https_port => $contrail_webui_https_port, + admin_user => $admin_user, + admin_password => $admin_password, + admin_token => $admin_token, + admin_tenant_name => $admin_tenant_name, } } diff --git a/manifests/profile/base/manila.pp b/manifests/profile/base/manila.pp new file mode 100644 index 0000000..5210284 --- /dev/null +++ b/manifests/profile/base/manila.pp @@ -0,0 +1,50 @@ +# Copyright 2016 Red Hat, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +# == Class: tripleo::profile::base::manila +# +# Manila common profile for tripleo +# +# === Parameters +# +# [*bootstrap_node*] +# (Optional) The hostname of the node responsible for bootstrapping tasks +# Defaults to hiera('bootstrap_nodeid') +# +# [*step*] +# (Optional) The current step of the deployment +# Defaults to hiera('step') +# +# [*rabbit_hosts*] +# list of the rabbbit host IPs +# Defaults to hiera('rabbitmq_node_ips') + +class tripleo::profile::base::manila ( + $bootstrap_node = hiera('bootstrap_nodeid', undef), + $step = hiera('step'), + $rabbit_hosts = hiera('rabbitmq_node_ips', undef), +) { + if $::hostname == downcase($bootstrap_node) { + $sync_db = true + } else { + $sync_db = false + } + + if $step >= 4 or ($step >= 3 and $sync_db) { + class { '::manila' : + rabbit_hosts => $rabbit_hosts, + } + include ::manila::config + } +} diff --git a/manifests/profile/base/manila/api.pp b/manifests/profile/base/manila/api.pp index 89ff810..ca5455f 100644 --- a/manifests/profile/base/manila/api.pp +++ b/manifests/profile/base/manila/api.pp @@ -18,24 +18,32 @@ # # === Parameters # +# [*bootstrap_node*] +# (Optional) The hostname of the node responsible for bootstrapping tasks +# Defaults to hiera('bootstrap_nodeid') +# # [*step*] # (Optional) The current step in deployment. See tripleo-heat-templates # for more details. # Defaults to hiera('step') -# -# [*rabbit_hosts*] -# list of the rabbbit host IPs -# Defaults to hiera('rabbitmq_node_ips') class tripleo::profile::base::manila::api ( - $step = hiera('step'), - $rabbit_hosts = hiera('rabbitmq_node_ips', undef), + $bootstrap_node = hiera('bootstrap_nodeid', undef), + $step = hiera('step'), ) { - if $step >= 4 { - class { '::manila' : - rabbit_hosts => $rabbit_hosts, - } + if $::hostname == downcase($bootstrap_node) { + $sync_db = true + } else { + $sync_db = false + } + + include ::tripleo::profile::base::manila + + if $step >= 3 and $sync_db { + include ::manila::db::mysql + } + + if $step >= 4 or ($step >= 3 and $sync_db) { include ::manila::api } } - diff --git a/manifests/profile/base/manila/scheduler.pp b/manifests/profile/base/manila/scheduler.pp index 8581187..07ea676 100644 --- a/manifests/profile/base/manila/scheduler.pp +++ b/manifests/profile/base/manila/scheduler.pp @@ -18,34 +18,19 @@ # # === Parameters # -# [*bootstrap_node*] -# (Optional) The hostname of the node responsible for bootstrapping tasks -# Defaults to hiera('bootstrap_nodeid') -# # [*step*] # (Optional) The current step in deployment. See tripleo-heat-templates # for more details. # Defaults to hiera('step') # class tripleo::profile::base::manila::scheduler ( - $bootstrap_node = hiera('bootstrap_nodeid', undef), - $step = hiera('step'), + $step = hiera('step'), ) { - if $::hostname == downcase($bootstrap_node) { - $sync_db = true - } else { - $sync_db = false - } - - if $step >= 3 and $sync_db { - include ::manila::db::mysql - } + include ::tripleo::profile::base::manila if $step >= 4 { include ::manila::compute::nova include ::manila::network::neutron include ::manila::scheduler } - } - diff --git a/manifests/profile/base/manila/share.pp b/manifests/profile/base/manila/share.pp index ed64b29..d39c55c 100644 --- a/manifests/profile/base/manila/share.pp +++ b/manifests/profile/base/manila/share.pp @@ -26,8 +26,9 @@ class tripleo::profile::base::manila::share ( $step = hiera('step'), ) { + include ::tripleo::profile::base::manila + if $step >= 4 { include ::manila::share } } - diff --git a/manifests/profile/base/mistral.pp b/manifests/profile/base/mistral.pp index cffb03e..3ebc3d5 100644 --- a/manifests/profile/base/mistral.pp +++ b/manifests/profile/base/mistral.pp @@ -27,9 +27,14 @@ # for more details. # Defaults to hiera('step') # +# [*rabbit_hosts*] +# list of the rabbbit host IPs +# Defaults to hiera('rabbitmq_node_ips') + class tripleo::profile::base::mistral ( $bootstrap_node = hiera('bootstrap_nodeid', undef), $step = hiera('step'), + $rabbit_hosts = hiera('rabbitmq_node_ips', undef), ) { if $::hostname == downcase($bootstrap_node) { $sync_db = true @@ -42,7 +47,9 @@ class tripleo::profile::base::mistral ( } if $step >= 4 or ($step >= 3 and $sync_db) { - include ::mistral + class { '::mistral': + rabbit_hosts => $rabbit_hosts, + } include ::mistral::config include ::mistral::client include ::mistral::db::sync diff --git a/manifests/profile/base/swift/proxy.pp b/manifests/profile/base/swift/proxy.pp index a95d05f..9d50462 100644 --- a/manifests/profile/base/swift/proxy.pp +++ b/manifests/profile/base/swift/proxy.pp @@ -37,7 +37,7 @@ class tripleo::profile::base::swift::proxy ( $memcache_port = 11211, ) { if $step >= 4 { - $swift_memcache_servers = suffix($memcache_servers, ":${memcache_port}") + $swift_memcache_servers = suffix(any2array(normalize_ip_for_uri($memcache_servers)), ":${memcache_port}") include ::swift::proxy include ::swift::proxy::proxy_logging include ::swift::proxy::healthcheck diff --git a/manifests/profile/base/swift/ringbuilder.pp b/manifests/profile/base/swift/ringbuilder.pp index 98a09a0..c77d744 100644 --- a/manifests/profile/base/swift/ringbuilder.pp +++ b/manifests/profile/base/swift/ringbuilder.pp @@ -91,7 +91,7 @@ class tripleo::profile::base::swift::ringbuilder ( # rebalance swift::ringbuilder::rebalance{ ['object', 'account', 'container']: - seed => 999, + seed => '999', } Ring_object_device<| |> ~> Exec['rebalance_object'] diff --git a/manifests/profile/base/swift/storage.pp b/manifests/profile/base/swift/storage.pp index 0b09ea6..d1660de 100644 --- a/manifests/profile/base/swift/storage.pp +++ b/manifests/profile/base/swift/storage.pp @@ -41,7 +41,7 @@ class tripleo::profile::base::swift::storage ( ensure => directory, owner => 'swift', group => 'swift', - require => Package['openstack-swift'], + require => Package['swift'], } } $swift_components = ['account', 'container', 'object'] diff --git a/manifests/profile/base/ui.pp b/manifests/profile/base/ui.pp index 22371d1..681496a 100644 --- a/manifests/profile/base/ui.pp +++ b/manifests/profile/base/ui.pp @@ -20,5 +20,7 @@ class tripleo::profile::base::ui () { package {'openstack-tripleo-ui': } include ::apache + + include ::tripleo::ui } diff --git a/manifests/profile/pacemaker/manila.pp b/manifests/profile/pacemaker/manila.pp index 961278b..a1ff5ca 100644 --- a/manifests/profile/pacemaker/manila.pp +++ b/manifests/profile/pacemaker/manila.pp @@ -27,44 +27,9 @@ # for more details. # Defaults to hiera('step') # -# [*manila_cephfsnative_enable*] -# (Optional) Enable the CephFS Native backend. -# Defaults to hiera('manila_cephfsnative_enable_backend', 'false') -# -# [*cephfs_handles_share_servers*] -# (Optional) -# Defaults to hiera('manila::backend::cephfsnative::driver_handles_share_servers', false) -# -# [*cephfs_backend_name*] -# (Optional) -# Defaults to hiera('manila::backend::cephfsnative::cephfs_backend_name') -# -# [*cephfs_conf_path*] -# (Optional) -# Defaults to hiera('manila::backend::cephfsnative::cephfs_conf_path') -# -# [*cephfs_auth_id*] -# (Optional) -# Defaults to hiera('manila::backend::cephfsnative::cephfs_auth_id') -# -# [*cephfs_cluster_name*] -# (Optional) -# Defaults to hiera('manila::backend::cephfsnative::cephfs_cluster_name') -# -# [*cephfs_enable_snapshots*] -# (Optional) -# Defaults to hiera('manila::backend::cephfsnative::cephfs_enable_snapshots') -# class tripleo::profile::pacemaker::manila ( $bootstrap_node = hiera('bootstrap_nodeid'), $step = hiera('step'), - $manila_cephfsnative_enable = hiera('manila::backend::cephfsnative::enable_backend', false), - $cephfs_handles_share_servers = hiera('manila::backend::cephfsnative::driver_handles_share_servers'), - $cephfs_backend_name = hiera('manila::backend::cephfsnative::cephfs_backend_name'), - $cephfs_conf_path = hiera('manila::backend::cephfsnative::cephfs_conf_path'), - $cephfs_auth_id = hiera('manila::backend::cephfsnative::cephfs_auth_id'), - $cephfs_cluster_name = hiera('manila::backend::cephfsnative::cephfs_cluster_name'), - $cephfs_enable_snapshots = hiera('manila::backend::cephfsnative::cephfs_enable_snapshots'), ) { if $::hostname == downcase($bootstrap_node) { $pacemaker_master = true @@ -81,11 +46,11 @@ class tripleo::profile::pacemaker::manila ( stop => '/bin/true', } - if $step >= 4 { - include ::tripleo::profile::base::manila::api - include ::tripleo::profile::base::manila::scheduler - include ::tripleo::profile::base::manila::share + include ::tripleo::profile::base::manila::api + include ::tripleo::profile::base::manila::scheduler + include ::tripleo::profile::base::manila::share + if $step >= 4 { # manila generic: $manila_generic_enable = hiera('manila_generic_enable_backend', false) if $manila_generic_enable { @@ -116,15 +81,16 @@ class tripleo::profile::pacemaker::manila ( } # manila cephfsnative: + $manila_cephfsnative_enable = hiera('manila::backend::cephfsnative::enable_backend', false) if $manila_cephfsnative_enable { $manila_cephfsnative_backend = hiera('manila::backend::cephfsnative::title') manila::backend::cephfsnative { $manila_cephfsnative_backend : - driver_handles_share_servers => $cephfs_handles_share_servers, - cephfs_backend_name => $cephfs_backend_name, - cephfs_conf_path => $cephfs_conf_path, - cephfs_auth_id => $cephfs_auth_id, - cephfs_cluster_name => $cephfs_cluster_name, - cephfs_enable_snapshots => $cephfs_enable_snapshots, + driver_handles_share_servers => hiera('manila::backend::cephfsnative::driver_handles_share_servers', false), + share_backend_name => hiera('manila::backend::cephfsnative::share_backend_name'), + cephfs_conf_path => hiera('manila::backend::cephfsnative::cephfs_conf_path'), + cephfs_auth_id => hiera('manila::backend::cephfsnative::cephfs_auth_id'), + cephfs_cluster_name => hiera('manila::backend::cephfsnative::cephfs_cluster_name'), + cephfs_enable_snapshots => hiera('manila::backend::cephfsnative::cephfs_enable_snapshots'), } } diff --git a/manifests/ui.pp b/manifests/ui.pp new file mode 100644 index 0000000..0a12af0 --- /dev/null +++ b/manifests/ui.pp @@ -0,0 +1,108 @@ +# Copyright 2016 Red Hat, Inc. +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +# == Class: tripleo::ui +# +# Configure TripleO UI. +# +# === Parameters: +# +# [*servername*] +# The servername for the virtualhost. +# Optional. Defaults to $::fqdn +# +# [*bind_host*] +# The host/ip address Apache will listen on. +# Optional. Defaults to undef (listen on all ip addresses). +# +# [*ui_port*] +# The port on which the UI is listening. +# Defaults to 3000 +# +# [*keystone_url*] +# The keystone service url +# Defaults to hiera('keystone::endpoint::public_url') +# +# [*heat_url*] +# The heat service url +# Defaults to hiera('heat::keystone::auth::public_url') +# +# [*heat_url*] +# The heat service url +# Defaults to hiera('heat::keystone::auth::public_url') +# +# [*heat_url*] +# The heat service url +# Defaults to hiera('heat::keystone::auth::public_url') +# +# [*ironic_url*] +# The ironic service url +# Defaults to hiera('ironic::keystone::auth::public_url') +# +# [*mistral_url*] +# The mistral service url +# Defaults to hiera('mistral::keystone::auth::public_url') +# +# [*swift_url*] +# The swift service url +# Defaults to hiera('swift::keystone::auth::public_url') +# +# [*zaqar_websocket_url*] +# The zaqar websocket url +# Defaults to hiera('zaquar::keystone::auth_websocket::public_url') +# +# [*zaqar_default_queue*] +# The zaqar default queue +# A string. +# Defaults to 'tripleo' +# +class tripleo::ui ( + $servername = $::fqdn, + $bind_host = undef, + $ui_port = 3000, + $keystone_url = hiera('keystone::endpoint::public_url'), + $heat_url = hiera('heat::keystone::auth::public_url', undef), + $ironic_url = hiera('ironic::keystone::auth::public_url', undef), + $mistral_url = hiera('mistral::keystone::auth::public_url', undef), + $swift_url = hiera('swift::keystone::auth::public_url', undef), + $zaqar_websocket_url = hiera('zaqar::keystone::auth_websocket::public_url', undef), + $zaqar_default_queue = 'tripleo' +) { + + ::apache::vhost { 'tripleo-ui': + ensure => 'present', + servername => $servername, + ip => $bind_host, + port => $ui_port, + docroot => '/var/www/openstack-tripleo-ui/dist', + options => ['Indexes', 'FollowSymLinks'], + rewrites => [ + { + comment => 'Redirect 404 to index', + rewrite_cond => ['%{REQUEST_FILENAME} !-f', '%{REQUEST_FILENAME} !-d'], + rewrite_rule => ['(.*) index.html'], + }, + ], + } + + file { '/var/www/openstack-tripleo-ui/dist/tripleo_ui_config.js' : + ensure => file, + content => template('tripleo/ui/tripleo_ui_config.js.erb'), + owner => 'root', + group => 'root', + mode => '0644', + } + +} |