diff options
author | Pradeep Kilambi <pkilambi@redhat.com> | 2016-04-12 11:53:18 -0400 |
---|---|---|
committer | Carlos Camacho <ccamacho@redhat.com> | 2016-06-13 15:28:34 +0200 |
commit | 30ed766ffdd7e19a4231c0b216ba7d0307fb326f (patch) | |
tree | ff9245a4335026751ece08ee53f153f48e5ef997 /manifests/profile/base/database/mongodbcommon.pp | |
parent | b46cebf80a7bcf9833fdfbd23ee2ee7b41c66463 (diff) |
Add mongodb profiles
Implements: blueprint refactor-puppet-manifests
Co-Authored-By: Carlos Camacho <ccamacho@redhat.com>
Co-Authored-By: Juan Antonio Osorio Robles <jaosorior@redhat.com>
Change-Id: Idb1e78ebec7682fe68ca5902a22cfb6030498091
Diffstat (limited to 'manifests/profile/base/database/mongodbcommon.pp')
-rw-r--r-- | manifests/profile/base/database/mongodbcommon.pp | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/manifests/profile/base/database/mongodbcommon.pp b/manifests/profile/base/database/mongodbcommon.pp new file mode 100644 index 0000000..6530730 --- /dev/null +++ b/manifests/profile/base/database/mongodbcommon.pp @@ -0,0 +1,52 @@ +# 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::database::mongodb +# +# Mongodb profile for tripleo +# +# === Parameters +# +# [*mongodb_node_ips*] +# List of The mongodb node ip addresses +# +# [*mongodb_ipv6_enabled*] +# A boolean value for mongodb server ipv6 is enabled or not +# Defaults to false +# +class tripleo::profile::base::database::mongodbcommon ( + $mongodb_node_ips = hiera('mongo_node_ips'), + $mongodb_ipv6_enabled = false, +) { + + $port = '27017' + + # NOTE(gfidente): the following vars are needed on all nodes so they + # need to stay out of pacemaker_master conditional. + # The addresses mangling will hopefully go away when we'll be able to + # configure the connection string via hostnames, until then, we need to pass + # the list of IPv6 addresses *with* port and without the brackets as 'members' + # argument for the 'mongodb_replset' resource. + if str2bool($mongodb_ipv6_enabled) { + $mongo_node_ips_with_port_prefixed = prefix($mongodb_node_ips, '[') + $mongo_node_ips_with_port = suffix( + $mongo_node_ips_with_port_prefixed, "]:${port}") + $mongo_node_ips_with_port_nobr = suffix($mongodb_node_ips, ":${port}") + } else { + $mongo_node_ips_with_port = suffix($mongodb_node_ips, ":${port}") + $mongo_node_ips_with_port_nobr = suffix($mongodb_node_ips, ":${port}") + } + $mongo_node_string = join($mongo_node_ips_with_port, ',') + +} |