class tripleo::profile::base::neutron::opendaylight (
$step = Integer(hiera('step')),
$odl_api_ips = hiera('opendaylight_api_node_ips'),
- $node_name = hiera('bootstrap_nodeid')
) {
if $step >= 1 {
} elsif size($odl_api_ips) == 2 {
fail('2 node OpenDaylight deployments are unsupported. Use 1 or greater than 2')
} elsif size($odl_api_ips) > 2 {
- $node_string = split($node_name, '-')
- $ha_node_index = $node_string[-1] + 1
class { '::opendaylight':
- enable_ha => true,
- ha_node_ips => $odl_api_ips,
- ha_node_index => $ha_node_index,
+ enable_ha => true,
+ ha_node_ips => $odl_api_ips,
}
} else {
include ::opendaylight
+++ /dev/null
-# 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.
-#
-# Configures an OpenDaylight cluster.
-# It creates the akka configuration file for ODL to cluster correctly
-# It will not configure clustering if less than 3 nodes
-#
-# == Function: tripleo::profile::base::neutron::opendaylight::configure_cluster
-#
-# == Parameters
-#
-# [*node_name*]
-# The short hostname of node
-#
-# [*odl_api_ips*] Array of IPs per ODL node
-# Defaults to empty array
-#
-define tripleo::profile::base::neutron::opendaylight::configure_cluster(
- $node_name,
- $odl_api_ips = [],
-) {
- validate_array($odl_api_ips)
- if size($odl_api_ips) > 2 {
- $node_string = split($node_name, '-')
- $ha_node_index = $node_string[-1] + 1
- $ha_node_ip_str = join($odl_api_ips, ' ')
- exec { 'Configure ODL Clustering':
- command => "configure_cluster.sh ${ha_node_index} ${ha_node_ip_str}",
- path => '/opt/opendaylight/bin/:/usr/sbin:/usr/bin:/sbin:/bin',
- creates => '/opt/opendaylight/configuration/initial/akka.conf'
- }
- }
-}
-
+++ /dev/null
-# 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.
-#
-# Configures an OpenDaylight cluster.
-# It creates the akka configuration file for ODL to cluster correctly
-# It will not configure clustering if less than 3 nodes
-#
-# == Class: tripleo::profile::base::neutron::opendaylight::create_cluster
-#
-# OpenDaylight class only used for creating clusters with container deployments
-#
-# === Parameters
-#
-# [*odl_api_ips*]
-# (Optional) List of OpenStack Controller IPs for ODL API
-# Defaults to hiera('opendaylight_api_node_ips')
-#
-# [*node_name*]
-# (Optional) The short hostname of node
-# Defaults to hiera('bootstrap_nodeid')
-#
-class tripleo::profile::base::neutron::opendaylight::create_cluster (
- $odl_api_ips = hiera('opendaylight_api_node_ips'),
- $node_name = hiera('bootstrap_nodeid')
-) {
-
- tripleo::profile::base::neutron::opendaylight::configure_cluster {'ODL cluster':
- node_name => $node_name,
- odl_api_ips => $odl_api_ips,
- }
-
-}
--- /dev/null
+---
+deprecations:
+ - Deprecates and removes workaround OpenDaylight
+ clustering function and class. Clustering config
+ is now handled by puppet-opendaylight.
+ - Removes deprecated opendaylight parameter
+ 'ha_node_index' which is no longer needed to
+ configure clustering.
describe 'tripleo::profile::base::neutron::opendaylight' do
let :params do
- { :step => 1,
- :node_name => 'overcloud-controller-0',
+ { :step => 1
}
end
shared_examples_for 'tripleo::profile::base::neutron::opendaylight' do
it 'should install and configure OpenDaylight in HA' do
is_expected.to contain_class('opendaylight').with(
:enable_ha => true,
- :ha_node_ips => params[:odl_api_ips],
- :ha_node_index => '1',
+ :ha_node_ips => params[:odl_api_ips]
)
end
end