
This adds defined anchor points for external modules to hook into the software install, config and service dependency chain. This allows external modules to manage software installation (virtualenv, containers, etc) and service management (pacemaker) without needing rely on resources that may change or be renamed. Change-Id: Idb1332dd498bb3065720f2ccaf68e6b0e9fa80c3
144 lines
5.0 KiB
Puppet
144 lines
5.0 KiB
Puppet
# == Class: neutron::config
|
|
#
|
|
# This class is used to manage arbitrary Neutron configurations.
|
|
#
|
|
# === Parameters
|
|
#
|
|
# [*xxx_config*]
|
|
# (optional) Allow configuration of arbitrary Neutron xxx specific configurations.
|
|
# The value is a hash of neutron_config resources. Example:
|
|
# server_config =>
|
|
# { 'DEFAULT/foo' => { value => 'fooValue'},
|
|
# 'DEFAULT/bar' => { value => 'barValue'}
|
|
# }
|
|
#
|
|
# NOTE: { 'DEFAULT/foo': value => 'fooValue'; 'DEFAULT/bar': value => 'barValue'} is invalid.
|
|
#
|
|
# In yaml format, Example:
|
|
# server_config:
|
|
# DEFAULT/foo:
|
|
# value: fooValue
|
|
# DEFAULT/bar:
|
|
# value: barValue
|
|
#
|
|
# [*server_config*]
|
|
# (optional) Manage configuration of neutron.conf
|
|
#
|
|
# [*api_config*]
|
|
# (optional) Manage configuration of api-paste.ini
|
|
#
|
|
# [*l3_agent_config*]
|
|
# (optional) Manage configuration of l3_agent.ini
|
|
#
|
|
# [*dhcp_agent_config*]
|
|
# (optional) Manage configuration of dhcp_agent.ini
|
|
#
|
|
# [*lbaas_agent_config*]
|
|
# (optional) Manage configuration of lbaas_agent.ini
|
|
#
|
|
# [*metadata_agent_config*]
|
|
# (optional) Manage configuration of metadata_agent.ini
|
|
#
|
|
# [*metering_agent_config*]
|
|
# (optional) Manage configuration of metering_agent.ini
|
|
#
|
|
# [*vpnaas_agent_config*]
|
|
# (optional) Manage configuration of vpn_agent.ini
|
|
#
|
|
# [*plugin_linuxbridge_config*]
|
|
# (optional) Manage configuration of linuxbridge_conf.ini
|
|
#
|
|
# [*plugin_cisco_db_conn_config*]
|
|
# (optional) Manage configuration of plugins/cisco/db_conn.ini
|
|
#
|
|
# [*plugin_cisco_l2network_config*]
|
|
# (optional) Manage configuration of plugins/cisco/l2network_plugin.ini
|
|
#
|
|
# [*plugin_cisco_config*]
|
|
# (optional) Manage configuration of cisco_plugins.ini
|
|
#
|
|
# [*plugin_midonet_config*]
|
|
# (optional) Manage configuration of plugins/midonet/midonet.ini
|
|
#
|
|
# [*plugin_plumgrid_config*]
|
|
# (optional) Manage configuration of plugins/plumgrid/plumgrid.ini
|
|
#
|
|
# [*plugin_opencontrail_config*]
|
|
# (optional) Manage configuration of plugins/opencontrail/ContrailPlugin.ini
|
|
#
|
|
# [*plugin_ovn_config*]
|
|
# (optional) Manage configuration of plugins/networking-ovn/networking-ovn.ini
|
|
#
|
|
# [*plugin_nuage_config*]
|
|
# (optional) Manage configuration of plugins/nuage/plugin.ini
|
|
#
|
|
# [*plugin_ml2_config*]
|
|
# (optional) Manage configuration of ml2_conf.ini
|
|
#
|
|
# [*plugin_ovs_config*]
|
|
# (optional) Manage configuration of ovs_neutron_plugin.ini
|
|
#
|
|
# NOTE: The configuration MUST NOT be already handled by this module
|
|
# or Puppet catalog compilation will fail with duplicate resources.
|
|
#
|
|
class neutron::config (
|
|
$server_config = {},
|
|
$api_config = {},
|
|
$l3_agent_config = {},
|
|
$dhcp_agent_config = {},
|
|
$lbaas_agent_config = {},
|
|
$metadata_agent_config = {},
|
|
$metering_agent_config = {},
|
|
$vpnaas_agent_config = {},
|
|
$plugin_linuxbridge_config = {},
|
|
$plugin_cisco_db_conn_config = {},
|
|
$plugin_cisco_l2network_config = {},
|
|
$plugin_cisco_config = {},
|
|
$plugin_midonet_config = {},
|
|
$plugin_plumgrid_config = {},
|
|
$plugin_opencontrail_config = {},
|
|
$plugin_ovn_config = {},
|
|
$plugin_nuage_config = {},
|
|
$plugin_ml2_config = {},
|
|
) {
|
|
|
|
include ::neutron::deps
|
|
|
|
validate_hash($server_config)
|
|
validate_hash($api_config)
|
|
validate_hash($l3_agent_config)
|
|
validate_hash($dhcp_agent_config)
|
|
validate_hash($lbaas_agent_config)
|
|
validate_hash($metadata_agent_config)
|
|
validate_hash($metering_agent_config)
|
|
validate_hash($vpnaas_agent_config)
|
|
validate_hash($plugin_linuxbridge_config)
|
|
validate_hash($plugin_cisco_db_conn_config)
|
|
validate_hash($plugin_cisco_l2network_config)
|
|
validate_hash($plugin_cisco_config)
|
|
validate_hash($plugin_midonet_config)
|
|
validate_hash($plugin_plumgrid_config)
|
|
validate_hash($plugin_opencontrail_config)
|
|
validate_hash($plugin_ovn_config)
|
|
validate_hash($plugin_nuage_config)
|
|
validate_hash($plugin_ml2_config)
|
|
|
|
create_resources('neutron_config', $server_config)
|
|
create_resources('neutron_api_config', $api_config)
|
|
create_resources('neutron_l3_agent_config', $l3_agent_config)
|
|
create_resources('neutron_dhcp_agent_config', $dhcp_agent_config)
|
|
create_resources('neutron_metadata_agent_config', $metadata_agent_config)
|
|
create_resources('neutron_metering_agent_config', $metering_agent_config)
|
|
create_resources('neutron_vpnaas_agent_config', $vpnaas_agent_config)
|
|
create_resources('neutron_plugin_linuxbridge', $plugin_linuxbridge_config)
|
|
create_resources('neutron_plugin_cisco_db_conn', $plugin_cisco_db_conn_config)
|
|
create_resources('neutron_plugin_cisco_l2network', $plugin_cisco_l2network_config)
|
|
create_resources('neutron_plugin_cisco', $plugin_cisco_config)
|
|
create_resources('neutron_plugin_midonet', $plugin_midonet_config)
|
|
create_resources('neutron_plugin_plumgrid', $plugin_plumgrid_config)
|
|
create_resources('neutron_plugin_opencontrail', $plugin_opencontrail_config)
|
|
create_resources('neutron_plugin_ovn', $plugin_ovn_config)
|
|
create_resources('neutron_plugin_nuage', $plugin_nuage_config)
|
|
create_resources('neutron_plugin_ml2', $plugin_ml2_config)
|
|
}
|