heat_template_version: 2013-05-23 description: cmaui server template for vMMSC parameters: network_ipam_refs_data_ipam_subnets_addr_from_start_true: description: dummy type: string network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2: description: dummy type: string network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2: description: dummy type: string lb_st_interface_type_oam: description: dummy type: string template_PortTuple_LB1: description: dummy type: string oam_sec_group_name: description: dummy type: string jsa_net_name: description: dummy type: string nems_traffic_name: description: dummy type: string lb_st_vlan_type_oam: description: dummy type: string mac_address: type: string virtual_ip_address: type: string virtual_ipv6_address: type: string vlan_ids: type: string subinterface_name_prefix: type: string subinterface_instance_index: type: number security_group_name: type: not_important description: not impotrtant cmaui_oam_ips: type: string resources: template_VMInt_OAM_lb_1: type: OS::ContrailV2::VirtualMachineInterface properties: virtual_machine_interface_properties: { virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam }, } virtual_network_refs: [{ get_resource: jsa_net1 }] port_tuple_refs: [{ get_param: template_PortTuple_LB1 }] security_group_refs: [{ get_param: oam_sec_group_name}] name: {get_attr: [template_Vlan_1, virtual_machine_interface_properties, virtual_machine_interface_properties_sub_interface_vlan_tag ]} template_Vlan_1: type: OS::ContrailV2::VirtualMachineInterface properties: name: str_replace: template: $NAME$VLAN params: $NAME: { get_param: subinterface_name_prefix } $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] } virtual_machine_interface_properties: { virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam } } virtual_machine_interface_mac_addresses: { virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }], } virtual_machine_interface_allowed_address_pairs: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [ { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32 } }, { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128 } } ] } virtual_network_refs: [{ get_resource: jsa_net1 }] virtual_machine_interface_refs: [{ get_resource: cmaui_port_1 }] jsa_net1: properties: name: {get_attr: [ template_Vlan_1, virtual_machine_interface_allowed_address_pairs, virtual_machine_interface_allowed_address_pairs_allowed_address_pair, 1, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix ]} network_ipam_refs_data: - network_ipam_refs_data_ipam_subnets: - network_ipam_refs_data_ipam_subnets_addr_from_start: get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true network_ipam_refs_data_ipam_subnets_subnet: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix: get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2 network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len: get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2 type: "OS::ContrailV2::VirtualNetwork" template_VMInt_OAM_lb_2: type: OS::ContrailV2::VirtualMachineInterface properties: virtual_machine_interface_properties: { virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam }, } virtual_network_refs: [ { list_join: [':', { get_attr: [ jsa_net2, fq_name ] } ] }] port_tuple_refs: [{ get_param: template_PortTuple_LB1 }] security_group_refs: [{ get_param: oam_sec_group_name}] cmaui_port_1: type: OS::Neutron::Port properties: network: { get_resource: jsa_net1 } fixed_ips: [{"ip_address": {get_param: [cmaui_oam_ips, 0]}}] security_groups: [{get_param: security_group_name}] replacement_policy: AUTO template_Vlan_2: type: OS::ContrailV2::VirtualMachineInterface properties: name: str_replace: template: $NAME$VLAN params: $NAME: { get_param: subinterface_name_prefix } $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] } virtual_machine_interface_properties: { virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam } } virtual_machine_interface_mac_addresses: { virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }], } virtual_machine_interface_allowed_address_pairs: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [ { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32 } }, { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128 } } ] } virtual_network_refs: [ { list_join: [':', { get_attr: [ jsa_net2, fq_name ] } ] }] virtual_machine_interface_refs: [ { list_join: [':', { get_attr: [ template_VMInt_OAM_lb_2, fq_name ] } ] }] jsa_net2: properties: name: {get_attr: [template_VMInt_OAM_lb_2, virtual_machine_interface_properties, virtual_machine_interface_properties_service_interface_type ]} network_ipam_refs_data: - network_ipam_refs_data_ipam_subnets: - network_ipam_refs_data_ipam_subnets_addr_from_start: get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true network_ipam_refs_data_ipam_subnets_subnet: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix: get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2 network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len: get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2 type: "OS::ContrailV2::VirtualNetwork" template_VMInt_OAM_lb_3: type: OS::ContrailV2::VirtualMachineInterface properties: virtual_machine_interface_properties: { virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam }, } virtual_network_refs: [{ get_attr: [ jsa_net3, fq_name ] } ] port_tuple_refs: [{ get_param: template_PortTuple_LB1 }] security_group_refs: [{ get_param: oam_sec_group_name}] template_Vlan_3: type: OS::ContrailV2::VirtualMachineInterface properties: name: str_replace: template: $NAME$VLAN params: $NAME: { get_param: subinterface_name_prefix } $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] } virtual_machine_interface_properties: { virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam } } virtual_machine_interface_mac_addresses: { virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }], } virtual_machine_interface_allowed_address_pairs: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [ { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32 } }, { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128 } } ] } virtual_network_refs: [{ get_attr: [ jsa_net3, fq_name ] } ] virtual_machine_interface_refs: [ { get_attr: [ template_VMInt_OAM_lb_3, fq_name ] }] jsa_net3: properties: name: aaa network_ipam_refs_data: - network_ipam_refs_data_ipam_subnets: - network_ipam_refs_data_ipam_subnets_addr_from_start: get_param: network_ipam_refs_data_ipam_subnets_addr_from_start_true network_ipam_refs_data_ipam_subnets_subnet: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix: get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_2 network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len: get_param: network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len_2 type: "OS::ContrailV2::VirtualNetwork" template_VMInt_OAM_lb_4: type: OS::ContrailV2::VirtualMachineInterface properties: virtual_machine_interface_properties: { virtual_machine_interface_properties_service_interface_type: { get_param: lb_st_interface_type_oam }, } virtual_network_refs: [{ get_attr: [ jsa_net4, fq_name ] } ] # should not connect to contrail network port_tuple_refs: [{ get_param: template_PortTuple_LB1 }] security_group_refs: [{ get_param: oam_sec_group_name}] jsa_net4: type: OS::Contrail::VirtualNetwork properties: name: {get_param: nems_traffic_name} template_Vlan_4: type: OS::ContrailV2::VirtualMachineInterface properties: name: str_replace: template: $NAME$VLAN params: $NAME: { get_param: subinterface_name_prefix } $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] } virtual_machine_interface_properties: { virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam } } virtual_machine_interface_mac_addresses: { virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }], } virtual_machine_interface_allowed_address_pairs: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [ { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32 } }, { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128 } } ] } virtual_network_refs: [{ get_attr: [ jsa_net4, fq_name ] } ] # should not connect to contrail network virtual_machine_interface_refs: [{ get_attr: [ template_VMInt_OAM_lb_3, fq_name ] }] template_Vlan_5: type: OS::ContrailV2::VirtualMachineInterface properties: name: str_replace: template: $NAME$VLAN params: $NAME: { get_param: subinterface_name_prefix } $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] } virtual_machine_interface_properties: { virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam } } virtual_machine_interface_mac_addresses: { virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }], } virtual_machine_interface_allowed_address_pairs: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [ { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32 } }, { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128 } } ] } virtual_network_refs: { get_resource: jsa_net1 } virtual_machine_interface_refs: { get_resource: template_VMInt_OAM_lb_1 } template_Vlan_6: type: OS::ContrailV2::VirtualMachineInterface properties: name: str_replace: template: $NAME$VLAN params: $NAME: { get_param: subinterface_name_prefix } $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] } virtual_machine_interface_properties: { virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam } } virtual_machine_interface_mac_addresses: { virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }], } virtual_machine_interface_allowed_address_pairs: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [ { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32 } }, { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128 } } ] } virtual_network_refs: [] virtual_machine_interface_refs: [] template_Vlan_7: type: OS::ContrailV2::VirtualMachineInterface properties: name: str_replace: template: $NAME$VLAN params: $NAME: { get_param: subinterface_name_prefix } $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] } virtual_machine_interface_properties: { virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam } } virtual_machine_interface_mac_addresses: { virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }], } virtual_machine_interface_allowed_address_pairs: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [ { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32 } }, { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128 } } ] } template_Vlan_8: type: OS::ContrailV2::VirtualMachineInterface properties: name: str_replace: template: $NAME$VLAN params: $NAME: { get_param: subinterface_name_prefix } $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] } virtual_machine_interface_properties: { virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam } } virtual_machine_interface_mac_addresses: { virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }], } virtual_machine_interface_allowed_address_pairs: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [ { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32 } }, { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128 } } ] } virtual_network_refs: [{ get_resource: jsa_net1 }] virtual_machine_interface_refs: [{ get_resource: template_Vlan_1 }] template_Vlan_9: type: OS::ContrailV2::VirtualMachineInterface properties: name: str_replace: template: $NAME$VLAN params: $NAME: { get_param: subinterface_name_prefix } $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] } virtual_machine_interface_properties: { virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: lb_st_vlan_type_oam } } virtual_machine_interface_mac_addresses: { virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }], } virtual_machine_interface_allowed_address_pairs: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [ { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32 } }, { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip: { virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address }, virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128 } } ] } virtual_network_refs: [{ get_resource: jsa_net1 }] virtual_machine_interface_refs: [{ get_resource: jsa_net1 }]