tripleo-heat-templates/deployment/neutron/neutron-plugin-ml2-mlnx-sdn-assist-container-puppet.yaml
ramishra b253d564f7 Use server side env merging for ServiceNetMap/VipSubnetMap
This simplifies the ServiceNetMap/VipSubnetMap interfaces
to use parameter merge strategy and removes the *Defaults
interfaces.

Change-Id: Ic73628a596e9051b5c02435b712643f9ef7425e3
2021-05-19 10:16:58 +05:30

95 lines
3.2 KiB
YAML

heat_template_version: wallaby
description: >
MLNX SDN configuration assist for Neutron ML2 Plugin.
parameters:
ServiceData:
default: {}
description: Dictionary packing service data
type: json
ServiceNetMap:
default: {}
description: Mapping of service_name -> network name. Typically set
via parameter_defaults in the resource registry. Use
parameter_merge_strategies to merge it with the defaults.
type: json
RoleName:
default: ''
description: Role name on which the service is applied
type: string
RoleParameters:
default: {}
description: Parameters specific to the role
type: json
EndpointMap:
default: {}
description: >
Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
ContainerNeutronConfigImage:
description: The container image to use for the neutron config_volume
type: string
MlnxSDNUsername:
description: The username for the SDN server.
type: string
MlnxSDNPassword:
type: string
description: The password for the SDN server.
hidden: true
MlnxSDNUrl:
description: SDN server URL
type: string
MlnxSDNDomain:
description: SDN server domain
type: string
default: 'cloudx'
MlnxSDNSyncEnabled:
type: boolean
default: true
MultiInterfaceEnabled:
type: boolean
default: false
BindNormalPortsPhysnet:
type: string
default: 'datacentre'
resources:
NeutronMl2Base:
type: ./neutron-plugin-ml2.yaml
properties:
ServiceData: {get_param: ServiceData}
ServiceNetMap: {get_param: ServiceNetMap}
EndpointMap: {get_param: EndpointMap}
RoleName: {get_param: RoleName}
RoleParameters: {get_param: RoleParameters}
outputs:
role_data:
description: Role data for the MLNX SDN ML2 Plugin.
value:
service_name: neutron_plugin_ml2_mlnx_sdn_assist
config_settings:
map_merge:
- get_attr: [NeutronMl2Base, role_data, config_settings]
- neutron::plugins::ml2::mellanox::mlnx_sdn_assist::sdn_username: {get_param: MlnxSDNUsername}
neutron::plugins::ml2::mellanox::mlnx_sdn_assist::sdn_password: {get_param: MlnxSDNPassword}
neutron::plugins::ml2::mellanox::mlnx_sdn_assist::sdn_url: {get_param: MlnxSDNUrl}
neutron::plugins::ml2::mellanox::mlnx_sdn_assist::sdn_domain: {get_param: MlnxSDNDomain}
neutron::plugins::ml2::mellanox::mlnx_sdn_assist::sync_enabled: {get_param: MlnxSDNSyncEnabled}
- if:
- {get_param: MultiInterfaceEnabled}
- neutron::plugins::ml2::mellanox::mlnx_sdn_assist::bind_normal_ports: {get_param: MultiInterfaceEnabled}
neutron::plugins::ml2::mellanox::mlnx_sdn_assist::bind_normal_ports_physnets: {get_param: BindNormalPortsPhysnet}
service_config_settings: {}
# BEGIN DOCKER SETTINGS
puppet_config:
config_volume: 'neutron'
puppet_tags: neutron_plugin_ml2
step_config: |
include tripleo::profile::base::neutron::plugins::ml2
config_image: {get_param: ContainerNeutronConfigImage}
kolla_config: {}
docker_config: {}