heat_template_version: rocky 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. This mapping overrides those in ServiceNetMapDefaults. 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' conditions: multi_interface_enabled: {equals: [{get_param: MultiInterfaceEnabled}, true]} 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: - multi_interface_enabled - 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: {}