aboutsummaryrefslogtreecommitdiffstats
path: root/manifests/profile/base
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/profile/base')
-rw-r--r--manifests/profile/base/cinder/volume.pp13
-rw-r--r--manifests/profile/base/cinder/volume/pure.pp65
-rw-r--r--manifests/profile/base/database/mysql/client.pp1
-rw-r--r--manifests/profile/base/keystone.pp3
-rw-r--r--manifests/profile/base/neutron/agents/vpp.pp49
-rw-r--r--manifests/profile/base/neutron/plugins/ml2.pp4
-rw-r--r--manifests/profile/base/neutron/plugins/ml2/vpp.pp49
-rw-r--r--manifests/profile/base/rabbitmq.pp2
8 files changed, 185 insertions, 1 deletions
diff --git a/manifests/profile/base/cinder/volume.pp b/manifests/profile/base/cinder/volume.pp
index 9fb1594..e1370a3 100644
--- a/manifests/profile/base/cinder/volume.pp
+++ b/manifests/profile/base/cinder/volume.pp
@@ -18,6 +18,10 @@
#
# === Parameters
#
+# [*cinder_enable_pure_backend*]
+# (Optional) Whether to enable the pure backend
+# Defaults to true
+#
# [*cinder_enable_dellsc_backend*]
# (Optional) Whether to enable the delsc backend
# Defaults to true
@@ -60,6 +64,7 @@
# Defaults to hiera('step')
#
class tripleo::profile::base::cinder::volume (
+ $cinder_enable_pure_backend = false,
$cinder_enable_dellsc_backend = false,
$cinder_enable_hpelefthand_backend = false,
$cinder_enable_dellps_backend = false,
@@ -76,6 +81,13 @@ class tripleo::profile::base::cinder::volume (
if $step >= 4 {
include ::cinder::volume
+ if $cinder_enable_pure_backend {
+ include ::tripleo::profile::base::cinder::volume::pure
+ $cinder_pure_backend_name = hiera('cinder::backend::pure::volume_backend_name', 'tripleo_pure')
+ } else {
+ $cinder_pure_backend_name = undef
+ }
+
if $cinder_enable_dellsc_backend {
include ::tripleo::profile::base::cinder::volume::dellsc
$cinder_dellsc_backend_name = hiera('cinder::backend::dellsc_iscsi::volume_backend_name', 'tripleo_dellsc')
@@ -134,6 +146,7 @@ class tripleo::profile::base::cinder::volume (
$backends = delete_undef_values([$cinder_iscsi_backend_name,
$cinder_rbd_backend_name,
+ $cinder_pure_backend_name,
$cinder_dellps_backend_name,
$cinder_dellsc_backend_name,
$cinder_hpelefthand_backend_name,
diff --git a/manifests/profile/base/cinder/volume/pure.pp b/manifests/profile/base/cinder/volume/pure.pp
new file mode 100644
index 0000000..e524919
--- /dev/null
+++ b/manifests/profile/base/cinder/volume/pure.pp
@@ -0,0 +1,65 @@
+# 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::cinder::volume::pure
+#
+# Cinder Volume pure profile for tripleo
+#
+# === Parameters
+#
+# [*san_ip*]
+# (required) IP address of PureStorage management VIP.
+#
+# [*pure_api_token*]
+# (required) API token for management of PureStorage array.
+#
+# [*backend_name*]
+# (Optional) Name given to the Cinder backend stanza
+# Defaults to 'tripleo_pure'
+#
+# [*pure_storage_protocol*]
+# (optional) Must be either 'iSCSI' or 'FC'. This will determine
+# which Volume Driver will be configured; PureISCSIDriver or PureFCDriver.
+# Defaults to 'iSCSI'
+#
+# [*use_multipath_for_image_xfer*]
+# (optional) .
+# Defaults to True
+#
+# [*use_chap_auth*]
+# (optional) Only affects the PureISCSIDriver.
+# Defaults to False
+#
+# [*step*]
+# (Optional) The current step in deployment. See tripleo-heat-templates
+# for more details.
+# Defaults to hiera('step')
+#
+class tripleo::profile::base::cinder::volume::pure (
+ $backend_name = hiera('cinder::backend::pure::volume_backend_name', 'tripleo_pure'),
+ $step = hiera('step'),
+) {
+ include ::tripleo::profile::base::cinder::volume
+
+ if $step >= 4 {
+ cinder::backend::pure { $backend_name :
+ san_ip => hiera('cinder::backend::pure::san_ip', undef),
+ pure_api_token => hiera('cinder::backend::pure::pure_api_token', undef),
+ pure_storage_protocol => hiera('cinder::backend::pure::pure_storage_protocol', undef),
+ use_chap_auth => hiera('cinder::backend::pure::use_chap_auth', undef),
+ use_multipath_for_image_xfer => hiera('cinder::backend::pure::use_multipath_for_image_xfer', undef),
+ }
+ }
+
+}
diff --git a/manifests/profile/base/database/mysql/client.pp b/manifests/profile/base/database/mysql/client.pp
index 22384a9..014ef35 100644
--- a/manifests/profile/base/database/mysql/client.pp
+++ b/manifests/profile/base/database/mysql/client.pp
@@ -82,6 +82,7 @@ class tripleo::profile::base::database::mysql::client (
# Create /etc/my.cnf.d/tripleo.cnf
exec { 'directory-create-etc-my.cnf.d':
command => 'mkdir -p /etc/my.cnf.d',
+ unless => 'test -d /etc/my.cnf.d',
path => ['/usr/bin', '/usr/sbin', '/bin', '/sbin'],
} ->
augeas { 'tripleo-mysql-client-conf':
diff --git a/manifests/profile/base/keystone.pp b/manifests/profile/base/keystone.pp
index 9f8f48a..ec896e7 100644
--- a/manifests/profile/base/keystone.pp
+++ b/manifests/profile/base/keystone.pp
@@ -312,6 +312,9 @@ class tripleo::profile::base::keystone (
if hiera('nova_placement_enabled', false) {
include ::nova::keystone::auth_placement
}
+ if hiera('octavia_api_enabled', false) {
+ include ::octavia::keystone::auth
+ }
if hiera('panko_api_enabled', false) {
include ::panko::keystone::auth
}
diff --git a/manifests/profile/base/neutron/agents/vpp.pp b/manifests/profile/base/neutron/agents/vpp.pp
new file mode 100644
index 0000000..e961aa7
--- /dev/null
+++ b/manifests/profile/base/neutron/agents/vpp.pp
@@ -0,0 +1,49 @@
+# Copyright 2017 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::neutron::agents::vpp
+#
+# Neutron VPP Agent profile for tripleo
+#
+# === Parameters
+#
+# [*step*]
+# (Optional) The current step in deployment. See tripleo-heat-templates
+# for more details.
+# Defaults to hiera('step')
+#
+# [*etcd_host*]
+# (Optional) etcd server VIP.
+# Defaults to hiera('etcd_vip')
+#
+# [*etcd_port*]
+# (Optional) etcd server listening port.
+# Defaults to 2379
+#
+class tripleo::profile::base::neutron::agents::vpp(
+ $step = hiera('step'),
+ $etcd_host = hiera('etcd_vip'),
+ $etcd_port = 2379,
+) {
+ if empty($etcd_host) {
+ fail('etcd_vip not set in hieradata')
+ }
+
+ if $step >= 4 {
+ class { '::neutron::agents::ml2::vpp':
+ etcd_host => $etcd_host,
+ etcd_port => $etcd_port,
+ }
+ }
+}
diff --git a/manifests/profile/base/neutron/plugins/ml2.pp b/manifests/profile/base/neutron/plugins/ml2.pp
index 52d4ca1..1702fed 100644
--- a/manifests/profile/base/neutron/plugins/ml2.pp
+++ b/manifests/profile/base/neutron/plugins/ml2.pp
@@ -81,5 +81,9 @@ class tripleo::profile::base::neutron::plugins::ml2 (
include ::neutron::plugins::ml2::fujitsu
include ::neutron::plugins::ml2::fujitsu::fossw
}
+
+ if 'vpp' in $mechanism_drivers {
+ include ::tripleo::profile::base::neutron::plugins::ml2::vpp
+ }
}
}
diff --git a/manifests/profile/base/neutron/plugins/ml2/vpp.pp b/manifests/profile/base/neutron/plugins/ml2/vpp.pp
new file mode 100644
index 0000000..217e4cf
--- /dev/null
+++ b/manifests/profile/base/neutron/plugins/ml2/vpp.pp
@@ -0,0 +1,49 @@
+# Copyright 2017 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::neutron::plugins::ml2::vpp
+#
+# VPP Neutron ML2 profile for tripleo
+#
+# === Parameters
+#
+# [*step*]
+# (Optional) The current step in deployment. See tripleo-heat-templates
+# for more details.
+# Defaults to hiera('step')
+#
+# [*etcd_host*]
+# (Optional) etcd server VIP.
+# Defaults to hiera('etcd_vip')
+#
+# [*etcd_port*]
+# (Optional) etcd server listening port.
+# Defaults to 2379
+#
+class tripleo::profile::base::neutron::plugins::ml2::vpp (
+ $step = hiera('step'),
+ $etcd_host = hiera('etcd_vip'),
+ $etcd_port = 2379,
+) {
+ if empty($etcd_host) {
+ fail('etcd_vip not set in hieradata')
+ }
+
+ if $step >= 4 {
+ class { '::neutron::plugins::ml2::vpp':
+ etcd_host => $etcd_host,
+ etcd_port => $etcd_port,
+ }
+ }
+}
diff --git a/manifests/profile/base/rabbitmq.pp b/manifests/profile/base/rabbitmq.pp
index 9d1417c..8551f19 100644
--- a/manifests/profile/base/rabbitmq.pp
+++ b/manifests/profile/base/rabbitmq.pp
@@ -110,7 +110,7 @@ class tripleo::profile::base::rabbitmq (
if $inet_dist_interface {
$real_kernel_variables = merge(
$kernel_variables,
- { 'inet_dist_use_interface' => ip_to_erl_format($inet_dist_interface) },
+ { 'inet_dist_use_interface' => ip_to_erl_format($inet_dist_interface) }
)
} else {
$real_kernel_variables = $kernel_variables