heat_template_version: rocky description: > OpenStack Neutron ML2/OpenDaylight plugin configured with Puppet 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 DefaultPasswords: default: {} 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 OpenDaylightPortBindingController: description: OpenDaylight port binding controller type: string default: 'pseudo-agentdb-binding' EnableInternalTLS: type: boolean default: false conditions: internal_tls_enabled: {equals: [{get_param: EnableInternalTLS}, true]} resources: NeutronMl2Base: type: ./neutron-plugin-ml2.yaml properties: ServiceData: {get_param: ServiceData} ServiceNetMap: {get_param: ServiceNetMap} DefaultPasswords: {get_param: DefaultPasswords} EndpointMap: {get_param: EndpointMap} RoleName: {get_param: RoleName} RoleParameters: {get_param: RoleParameters} outputs: role_data: description: Role data for the Neutron ML2/ODL plugin. value: service_name: neutron_plugin_ml2_odl config_settings: map_merge: - get_attr: [NeutronMl2Base, role_data, config_settings] - neutron::plugins::ml2::opendaylight::port_binding_controller: {get_param: OpenDaylightPortBindingController} - if: - internal_tls_enabled - neutron::plugins::ml2::opendaylight::ovsdb_connection: 'ssl:127.0.0.1:6639' tripleo::profile::base::neutron::plugins::ml2::opendaylight::conn_proto: 'https' - {} step_config: | include ::tripleo::profile::base::neutron::plugins::ml2 metadata_settings: get_attr: [NeutronMl2Base, role_data, metadata_settings]