Files
puppet-neutron/manifests/plugins/ml2/opendaylight.pp
Takashi Kajinami 4f9ea57cb2 Replace legacy facts and use fact hash
... because the latest lint no longer allows usage of legacy facts and
top scope fact.

Change-Id: Id66d5ae7904998aa8bbf42f3b2a49ec0748507b4
2023-03-02 12:21:36 +09:00

69 lines
2.2 KiB
Puppet

#
# Install the OpenDaylight and generate config file
# from parameters in the other classes.
#
# === Parameters
#
# [*package_ensure*]
# (optional) The intended state of the python-networking-odl
# package, i.e. any of the possible values of the 'ensure'
# property for a package resource type.
# Defaults to 'present'
#
# [*odl_username*]
# (optional) The opendaylight controller username
# Defaults to $facts['os_service_default']
# Example: 'admin'
#
# [*odl_password*]
# (optional) The opendaylight controller password
# Defaults to $facts['os_service_default']
# Example: 'admin'
#
# [*odl_url*]
# (optional) The opendaylight controller neutron URL
# Defaults to $facts['os_service_default']
# Example: 'http://127.0.0.1:8080/controller/nb/v2/neutron'
#
# [*port_binding_controller*]
# (optional) Name of the controller to be used for port binding.
# Defaults to $facts['os_service_default']
#
# [*odl_hostconf_uri*]
# (optional) Path for ODL host configuration REST interface.
# Defaults to $facts['os_service_default']
#
# [*odl_features*]
# (optional) List of ODL features to enable
# Defaults to $facts['os_service_default']
#
class neutron::plugins::ml2::opendaylight (
$package_ensure = 'present',
$odl_username = $facts['os_service_default'],
$odl_password = $facts['os_service_default'],
$odl_url = $facts['os_service_default'],
$port_binding_controller = $facts['os_service_default'],
$odl_hostconf_uri = $facts['os_service_default'],
$odl_features = $facts['os_service_default'],
) {
include neutron::deps
require neutron::plugins::ml2
ensure_resource('package', 'python-networking-odl',
{
ensure => $package_ensure,
tag => ['openstack', 'neutron-plugin-ml2-package']
}
)
neutron_plugin_ml2 {
'ml2_odl/username': value => $odl_username;
'ml2_odl/password': value => $odl_password, secret => true;
'ml2_odl/url': value => $odl_url;
'ml2_odl/port_binding_controller': value => $port_binding_controller;
'ml2_odl/odl_hostconf_uri': value => $odl_hostconf_uri;
'ml2_odl/odl_features': value => join(any2array($odl_features), ',');
}
}