aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortalio <tali.orenbach@amdocs.com>2017-09-14 10:54:21 +0300
committertalio <tali.orenbach@amdocs.com>2017-09-14 10:54:21 +0300
commit9c94d11d63d9016af74dcf3a2fd72d50955eace2 (patch)
tree5f56c433dabf17e5bca92a4f95711853f7b871a5
parentde8841c36349510e1b4c773753afad0eb8061f8c (diff)
Removing service templates without node templates
Bugfix for cases where we have substitution service templates without node templates Issue - ID : SDC-330 Change-Id: Ia9f33ce90fe0dbcc8ca2596ca63da704a48c7e67 Signed-off-by: talio <tali.orenbach@amdocs.com>
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/TranslationContext.java9
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNestedImpl.java30
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationResourceGroupImpl.java27
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/single/TranslateHeatNestedSingle.java24
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml3462
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/MainServiceTemplate.yaml1302
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_1_perimeta_swmu_a_childServiceTemplate.yaml831
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_1_perimeta_swmu_b_childServiceTemplate.yaml817
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_2_perimeta_sw_a_childServiceTemplate.yaml735
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_2_perimeta_sw_b_childServiceTemplate.yaml721
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/MANIFEST.json86
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/base_perimeta_deployment_create.env34
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/base_perimeta_deployment_create.yaml222
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/custom.ini21
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_a.env208
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_a.yaml322
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_b.env115
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_b.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_swmu_a_child.yaml313
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_swmu_b_child.yaml321
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_a.env206
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_a.yaml313
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_b.env113
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_b.yaml197
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_sw_a_child.yaml286
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_sw_b_child.yaml292
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/vlan_subinterface_dual.yaml102
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/expectedoutputfiles/MainServiceTemplate.yaml148
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java9
29 files changed, 11293 insertions, 170 deletions
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/TranslationContext.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/TranslationContext.java
index f5ad2a1d3c..a0034a3828 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/TranslationContext.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/TranslationContext.java
@@ -587,6 +587,15 @@ public class TranslationContext {
}
+ public Set<String> getServiceTemplatesWithoutNodeTemplateSection() {
+ return serviceTemplatesWithoutNodeTemplateSection;
+ }
+
+ public void setServiceTemplatesWithoutNodeTemplateSection(
+ Set<String> serviceTemplatesWithoutNodeTemplateSection) {
+ this.serviceTemplatesWithoutNodeTemplateSection = serviceTemplatesWithoutNodeTemplateSection;
+ }
+
public void addServiceTemplateWithoutNodeTemplates(String serviceTemplateName){
this.serviceTemplatesWithoutNodeTemplateSection.add(serviceTemplateName);
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNestedImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNestedImpl.java
index 843d9fabc6..c29409fe48 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNestedImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationNestedImpl.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation;
+import org.apache.commons.collections4.MapUtils;
import org.openecomp.core.utilities.file.FileUtils;
import org.openecomp.sdc.heat.datatypes.manifest.FileData;
import org.openecomp.sdc.logging.api.Logger;
@@ -31,12 +32,15 @@ import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
import org.openecomp.sdc.tosca.services.DataModelUtil;
import org.openecomp.sdc.tosca.services.ToscaUtil;
import org.openecomp.sdc.tosca.services.impl.ToscaAnalyzerServiceImpl;
+import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
import org.openecomp.sdc.translator.datatypes.heattotosca.to.TranslateTo;
import org.openecomp.sdc.translator.services.heattotosca.ConsolidationDataUtil;
import org.openecomp.sdc.translator.services.heattotosca.Constants;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
import org.openecomp.sdc.translator.services.heattotosca.TranslationService;
+import java.util.Objects;
+
public class ResourceTranslationNestedImpl extends ResourceTranslationBase {
protected static Logger logger =
@@ -46,8 +50,9 @@ public class ResourceTranslationNestedImpl extends ResourceTranslationBase {
public void translate(TranslateTo translateTo) {
mdcDataDebugMessage.debugEntryMessage(null, null);
+ TranslationContext context = translateTo.getContext();
FileData nestedFileData =
- HeatToToscaUtil.getFileData(translateTo.getResource().getType(), translateTo.getContext());
+ HeatToToscaUtil.getFileData(translateTo.getResource().getType(), context);
if (nestedFileData == null) {
logger.warn("Nested File '" + translateTo.getResource().getType()
+ "' is not exist, therefore, the nested resource with the ID '"
@@ -58,7 +63,7 @@ public class ResourceTranslationNestedImpl extends ResourceTranslationBase {
String substitutionNodeTypeKey = ToscaNodeType.ABSTRACT_NODE_TYPE_PREFIX + "heat."
+ templateName;
- if (!translateTo.getContext().getTranslatedServiceTemplates()
+ if (!context.getTranslatedServiceTemplates()
.containsKey(translateTo.getResource().getType())) {
//substitution service template
@@ -68,7 +73,7 @@ public class ResourceTranslationNestedImpl extends ResourceTranslationBase {
//global substitution service template
ServiceTemplate globalSubstitutionServiceTemplate = new HeatToToscaUtil()
.fetchGlobalSubstitutionServiceTemplate(translateTo.getServiceTemplate(),
- translateTo.getContext());
+ context);
//substitution node type
NodeType substitutionNodeType = new ToscaAnalyzerServiceImpl()
@@ -78,14 +83,22 @@ public class ResourceTranslationNestedImpl extends ResourceTranslationBase {
substitutionNodeType);
//substitution mapping
HeatToToscaUtil
- .handleSubstitutionMapping(translateTo.getContext(), substitutionNodeTypeKey,
+ .handleSubstitutionMapping(context, substitutionNodeTypeKey,
nestedSubstitutionServiceTemplate, substitutionNodeType);
//add new nested service template
- translateTo.getContext().getTranslatedServiceTemplates()
+ context.getTranslatedServiceTemplates()
.put(translateTo.getResource().getType(), nestedSubstitutionServiceTemplate);
}
+ ServiceTemplate substitutionServiceTemplate = context.getTranslatedServiceTemplates()
+ .get(translateTo.getResource().getType());
+
+ if(DataModelUtil.isNodeTemplateSectionMissingFromServiceTemplate(substitutionServiceTemplate)){
+ handleSubstitutionServiceTemplateWithoutNodeTemplates(translateTo, context, templateName);
+ mdcDataDebugMessage.debugExitMessage(null, null);
+ return;
+ }
NodeTemplate substitutionNodeTemplate =
HeatToToscaUtil.createAbstractSubstitutionNodeTemplate(translateTo, templateName,
substitutionNodeTypeKey);
@@ -100,6 +113,13 @@ public class ResourceTranslationNestedImpl extends ResourceTranslationBase {
mdcDataDebugMessage.debugExitMessage(null, null);
}
+ private void handleSubstitutionServiceTemplateWithoutNodeTemplates(TranslateTo translateTo,
+ TranslationContext context,
+ String templateName) {
+ context.addServiceTemplateWithoutNodeTemplates(templateName);
+ context.getTranslatedServiceTemplates().remove(translateTo.getResource().getType());
+ }
+
private ServiceTemplate createSubstitutionServiceTemplate(TranslateTo translateTo,
FileData nestedFileData,
String templateName) {
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationResourceGroupImpl.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationResourceGroupImpl.java
index 5d25c7ef25..bd672e387f 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationResourceGroupImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/services/heattotosca/impl/resourcetranslation/ResourceTranslationResourceGroupImpl.java
@@ -45,6 +45,7 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
import java.util.Optional;
public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBase {
@@ -72,7 +73,7 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
logger.warn("Resource '" + translateTo.getResourceId() + "' of type'"
+ HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource()
+ "' with resourceDef which is not pointing to nested heat file is not supported and "
- + "will be ignored in the translation ");
+ + "will be ignored in the translation ");
mdcDataDebugMessage.debugExitMessage(null, null);
return;
@@ -88,17 +89,19 @@ public class ResourceTranslationResourceGroupImpl extends ResourceTranslationBas
translateTo.getHeatOrchestrationTemplate(), nestedResource,
translateTo.getResourceId(), translateTo.getContext());
if (substitutionNodeTemplateId.isPresent()) {
- NodeTemplate substitutionNodeTemplate = DataModelUtil
- .getNodeTemplate(translateTo.getServiceTemplate(), substitutionNodeTemplateId.get());
- Map serviceTemplateFilter = (Map<String, Object>) substitutionNodeTemplate.getProperties()
- .get(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME);
-
- populateServiceTemplateFilterProperties(translateTo, substitutionNodeTemplate,
- serviceTemplateFilter);
- handlingIndexVar(translateTo, substitutionNodeTemplate);
- DataModelUtil
- .addNodeTemplate(translateTo.getServiceTemplate(), substitutionNodeTemplateId.get(),
- substitutionNodeTemplate);
+ NodeTemplate substitutionNodeTemplate =
+ DataModelUtil.getNodeTemplate(translateTo.getServiceTemplate(), substitutionNodeTemplateId.get());
+ if(!Objects.isNull(substitutionNodeTemplate)) {
+ Map serviceTemplateFilter = (Map<String, Object>) substitutionNodeTemplate.getProperties()
+ .get(ToscaConstants.SERVICE_TEMPLATE_FILTER_PROPERTY_NAME);
+
+ populateServiceTemplateFilterProperties(translateTo, substitutionNodeTemplate,
+ serviceTemplateFilter);
+ handlingIndexVar(translateTo, substitutionNodeTemplate);
+ DataModelUtil
+ .addNodeTemplate(translateTo.getServiceTemplate(), substitutionNodeTemplateId.get(),
+ substitutionNodeTemplate);
+ }
}
mdcDataDebugMessage.debugExitMessage(null, null);
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/single/TranslateHeatNestedSingle.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/single/TranslateHeatNestedSingle.java
index f81da11bc9..38df156efc 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/single/TranslateHeatNestedSingle.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/java/org/openecomp/sdc/translator/impl/heattotosca/nested/single/TranslateHeatNestedSingle.java
@@ -20,21 +20,39 @@
package org.openecomp.sdc.translator.impl.heattotosca.nested.single;
+import org.junit.Before;
import org.junit.Test;
import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.ConsolidationDataTestUtil;
import org.openecomp.sdc.translator.services.heattotosca.buildconsolidationdata.TestConstants;
import org.openecomp.sdc.translator.services.heattotosca.impl.resourcetranslation.BaseResourceTranslationTest;
+import java.io.IOException;
+
public class TranslateHeatNestedSingle extends BaseResourceTranslationTest {
- {
- inputFilesPath = "/mock/heat/nested/single/inputs";
- outputFilesPath = "/mock/heat/nested/single/expectedoutputfiles";
+ @Override
+ @Before
+ public void setUp() throws IOException {
+ // do not delete this function. it prevents the superclass setup from running
}
+
@Test
public void testTranslate() throws Exception {
+ inputFilesPath = "/mock/heat/nested/single/inputs";
+ outputFilesPath = "/mock/heat/nested/single/expectedoutputfiles";
+
+ initTranslatorAndTranslate();
testTranslation();
validateNestedTemplateConsolidationData(TestConstants.TEST_SINGLE_NESTED_RESOURCE);
}
+
+ @Test
+ public void testTranslateNestedWithoutNodeTemplates() throws IOException {
+ inputFilesPath = "/mock/heat/nested/nestedwithoutNodeTemplates/inputs";
+ outputFilesPath = "/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles";
+
+ initTranslatorAndTranslate();
+ testTranslation();
+ }
}
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
new file mode 100644
index 0000000000..306576bed5
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml
@@ -0,0 +1,3462 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: GlobalSubstitutionTypes
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+node_types:
+ org.openecomp.resource.abstract.nodes.heat.module_1_perimeta_swmu_a_child:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ required: true
+ status: SUPPORTED
+ ssc_a_name_0:
+ type: string
+ description: Name of Perimeta VM A instance
+ required: true
+ status: SUPPORTED
+ int_ha_network_plen:
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ unused_port_net_id:
+ type: string
+ description: Service network unused port network UUID
+ required: true
+ status: SUPPORTED
+ perimeta_server_group:
+ type: string
+ description: Server group to use for these VMs
+ required: true
+ status: SUPPORTED
+ perimeta_config:
+ type: string
+ description: JSON orchestration template configuration for instance.
+ required: true
+ status: SUPPORTED
+ ssc_a_int_ha_ip_0:
+ type: string
+ description: Fixed IP address to use as HA IP of A instance.
+ required: true
+ status: SUPPORTED
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ required: true
+ status: SUPPORTED
+ perimeta_untrusted_vlan_ids:
+ type: list
+ description: List of VLAN IDs to use on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ int_ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: Fixed IP address to use as HA IPs of B instance.
+ required: true
+ status: SUPPORTED
+ ssc_mgmt_vip_0:
+ type: string
+ description: Management virtual IP address.
+ required: true
+ status: SUPPORTED
+ ssc_a_trusted_ip_0:
+ type: string
+ description: Fixed IP address to use as Trusted/core fixed IPs of A instance.
+ required: true
+ status: SUPPORTED
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ vnf_id:
+ type: string
+ description: VNF ID of this deployment
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ required: true
+ status: SUPPORTED
+ ssc_trusted_vip_0:
+ type: string
+ description: Trusted/core virtual IP address.
+ required: true
+ status: SUPPORTED
+ ssc_untrusted_vip_0:
+ type: string
+ description: Untrusted/access virtual IP address
+ required: true
+ status: SUPPORTED
+ perimeta_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access alternate fixed IP of A instance.
+ required: true
+ status: SUPPORTED
+ perimeta_untrusted_num_vlans:
+ type: float
+ description: number of VLANs to connect to the untrusted/access interface
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ ssc_rf_vip_0:
+ type: string
+ description: RF virtual IP address to use for SSC.
+ required: true
+ status: SUPPORTED
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Fixed IP address to use as management IP of A instance.
+ required: true
+ status: SUPPORTED
+ trusted_net_id:
+ type: string
+ description: Trusted/core network UUID
+ required: true
+ status: SUPPORTED
+ ssc_untrusted_parent_vip_0:
+ type: string
+ description: Untrusted/access parent virtual IP address
+ required: true
+ status: SUPPORTED
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Untrusted/access alternate virtual IP address
+ required: true
+ status: SUPPORTED
+ ssc_a_rf_ip_0:
+ type: string
+ description: RF fixed IP address to use for SSC A.
+ required: true
+ status: SUPPORTED
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ ssc_a_untrusted_parent_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of A parent instance.
+ required: true
+ status: SUPPORTED
+ perimeta_untrusted_vlan_networks:
+ type: list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of A instance.
+ required: true
+ status: SUPPORTED
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ required: true
+ status: SUPPORTED
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ int_untrusted_parent_net_id:
+ type: string
+ description: internal Untrusted/access parent network id
+ required: true
+ status: SUPPORTED
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_perimeta_ssc_a_ha_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_a_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_a_untrusted_parent_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_a_untrusted_parent_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_a_mgmt_1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_a_mgmt_1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_a_trusted_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_a_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_a_unused_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_a_unused_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_a_mgmt_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_a_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_a_server_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_perimeta_ssc_a_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ capabilities:
+ disk.ephemeral.size_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_a_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_a_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_a_mgmt_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_a_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_a_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_perimeta_ssc_a_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_a_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_a_mgmt_1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_a_mgmt_1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_a_server_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_a_mgmt_1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_a_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_a_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_perimeta_ssc_a_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_a_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_a_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_a_untrusted_parent_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_a_unused_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_a_trusted_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_a_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_a_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_a_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_perimeta_ssc_a_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_a_untrusted_parent_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_a_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_a_ha_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_a_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_a_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_a_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_a_untrusted_parent_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.root.size_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_a_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_a_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_a_unused_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_a_unused_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_ssc_a_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_a_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_a_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_a_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_a_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ vcpus_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_a_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_perimeta_ssc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.module_1_perimeta_swmu_b_child:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ required: true
+ status: SUPPORTED
+ int_ha_network_plen:
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ unused_port_net_id:
+ type: string
+ description: Service network unused port network UUID
+ required: true
+ status: SUPPORTED
+ perimeta_server_group:
+ type: string
+ description: Server group to use for these VMs
+ required: true
+ status: SUPPORTED
+ ssc_b_name_0:
+ type: string
+ description: Name of Perimeta VM B instance
+ required: true
+ status: SUPPORTED
+ ssc_a_int_ha_ip_0:
+ type: string
+ description: Fixed IP address to use as HA IPs of A instance.
+ required: true
+ status: SUPPORTED
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of B instance.
+ required: true
+ status: SUPPORTED
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Fixed IP address to use as management IP of B instance.
+ required: true
+ status: SUPPORTED
+ ssc_b_untrusted_parent_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of B parent instance.
+ required: true
+ status: SUPPORTED
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ required: true
+ status: SUPPORTED
+ perimeta_untrusted_vlan_ids:
+ type: list
+ description: List of VLAN IDs to use on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ int_ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: Fixed IP address to use as HA IP of B instance.
+ required: true
+ status: SUPPORTED
+ ssc_mgmt_vip_0:
+ type: string
+ description: Management virtual IP address.
+ required: true
+ status: SUPPORTED
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ vnf_id:
+ type: string
+ description: VNF ID of this deployment
+ required: true
+ status: SUPPORTED
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ required: true
+ status: SUPPORTED
+ ssc_trusted_vip_0:
+ type: string
+ description: Trusted/core virtual IP address.
+ required: true
+ status: SUPPORTED
+ ssc_untrusted_vip_0:
+ type: string
+ description: Untrusted/access virtual IP address
+ required: true
+ status: SUPPORTED
+ perimeta_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_untrusted_num_vlans:
+ type: float
+ description: number of VLANs to connect to the untrusted/access interface
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ ssc_rf_vip_0:
+ type: string
+ description: RF virtual IP address to use for SSC.
+ required: true
+ status: SUPPORTED
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IP address to use as Trusted/core fixed IPs of B instance.
+ required: true
+ status: SUPPORTED
+ trusted_net_id:
+ type: string
+ description: Trusted/core network UUID
+ required: true
+ status: SUPPORTED
+ ssc_untrusted_parent_vip_0:
+ type: string
+ description: Untrusted/access parent virtual IP address
+ required: true
+ status: SUPPORTED
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Untrusted/access alternate virtual IP address
+ required: true
+ status: SUPPORTED
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access alternate fixed IP of B instance.
+ required: true
+ status: SUPPORTED
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ perimeta_untrusted_vlan_networks:
+ type: list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ required: true
+ status: SUPPORTED
+ ssc_b_rf_ip_0:
+ type: string
+ description: RF fixed IP address to use for SSC B.
+ required: true
+ status: SUPPORTED
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ int_untrusted_parent_net_id:
+ type: string
+ description: internal Untrusted/access parent network id
+ required: true
+ status: SUPPORTED
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ requirements:
+ - dependency_perimeta_ssc_b_trusted_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_b_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_b_untrusted_parent_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_b_untrusted_parent_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_b_mgmt_1_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_b_mgmt_1_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_b_unused_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_b_unused_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_b_server_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_perimeta_ssc_b_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_perimeta_ssc_b_mgmt_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_b_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_ssc_b_ha_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_ssc_b_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ host_perimeta_ssc_b_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_b_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_b_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_perimeta_ssc_b_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_b_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_b_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.iops_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_b_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_b_mgmt_1_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_b_unused_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_perimeta_ssc_b_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_b_server_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_b_mgmt_1_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_b_untrusted_parent_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_b_trusted_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_b_mgmt_1_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_b_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_b_unused_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_b_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_b_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_b_ha_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_b_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_b_untrusted_parent_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ binding_perimeta_ssc_b_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_perimeta_ssc_b_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_b_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_b_untrusted_parent_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_b_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_b_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_b_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_b_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_b_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_ssc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_b_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_b_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_b_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_ssc_b_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_b_unused_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_ssc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_ssc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_ssc_b_mgmt_1_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_ssc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_ssc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_perimeta_ssc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_ssc_b_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_ssc_b_mgmt_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_ssc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_ssc_b_unused_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.module_2_perimeta_sw_a_child:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ required: true
+ status: SUPPORTED
+ int_ha_network_plen:
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ perimeta_config:
+ type: string
+ description: JSON orchestration template configuration for instance.
+ required: true
+ status: SUPPORTED
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ required: true
+ status: SUPPORTED
+ perimeta_untrusted_vlan_ids:
+ type: list
+ description: List of VLAN IDs to use on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ int_ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ perimeta_instance_index:
+ type: float
+ description: Index of instance among multiple instances. Use to retrieve correct parameter for this instance when passed all parameters for all instances.
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 19
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ perimeta_server_groups:
+ type: list
+ description: Server groups to use for these VMs
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vnf_id:
+ type: string
+ description: VNF ID of this deployment
+ required: true
+ status: SUPPORTED
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ required: true
+ status: SUPPORTED
+ rtp_msc_mgmt_vips:
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_untrusted_parent_vips:
+ type: list
+ description: List of Untrusted/access parent virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_untrusted_num_vlans:
+ type: float
+ description: number of VLANs to connect to the untrusted/access interface
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ rtp_msc_a_int_ha_ips:
+ type: list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_a_untrusted_parent_ips:
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access parent fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_a_trusted_ips:
+ type: list
+ description: List of fixed IP addresses to use as Trusted/core fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_untrusted_vips:
+ type: list
+ description: List of Untrusted/access virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_net_id:
+ type: string
+ description: Trusted/core network UUID
+ required: true
+ status: SUPPORTED
+ rtp_msc_b_int_ha_ips:
+ type: list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_a_mgmt_ips:
+ type: list
+ description: List of fixed IP addresses to use as management IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_a_untrusted_ips:
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ rtp_msc_untrusted_v6_vips:
+ type: list
+ description: List of Untrusted/access alternate virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_untrusted_vlan_networks:
+ type: list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_a_untrusted_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access alternate fixed IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ required: true
+ status: SUPPORTED
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ int_untrusted_parent_net_id:
+ type: string
+ description: internal Untrusted/access parent network id
+ required: true
+ status: SUPPORTED
+ rtp_msc_a_names:
+ type: list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ rtp_msc_trusted_vips:
+ type: list
+ description: List of Trusted/core virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_perimeta_rtp_msc_a_trusted_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_rtp_msc_a_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_rtp_msc_a_ha_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_rtp_msc_a_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_rtp_msc_a_server_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_perimeta_rtp_msc_a_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_perimeta_rtp_msc_a_mgmt_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_rtp_msc_a_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_perimeta_rtp_msc_a_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_rtp_msc_a_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_a_trusted_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_rtp_msc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_rtp_msc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_rtp_msc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_rtp_msc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_rtp_msc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_perimeta_rtp_msc_a_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_a_ha_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_rtp_msc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_rtp_msc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_a_mgmt_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_rtp_msc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_rtp_msc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.usage_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_rtp_msc_a_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_rtp_msc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_a_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.iops_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_rtp_msc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_rtp_msc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_rtp_msc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_rtp_msc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_rtp_msc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ scalable_perimeta_rtp_msc_a_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ host_perimeta_rtp_msc_a_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_rtp_msc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_rtp_msc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_rtp_msc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_rtp_msc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_rtp_msc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_perimeta_rtp_msc_a_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_a_server_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_rtp_msc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_a_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_a_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ instance_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_a_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.latency_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_rtp_msc_a_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_rtp_msc_a_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_rtp_msc_a_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ perimeta_parent_interface:
+ type: string
+ description: Parent Contrail interface
+ required: true
+ status: SUPPORTED
+ perimeta_v6_vip_0:
+ type: string
+ description: virtual IPv6 address associated with subinterfaces
+ required: true
+ status: SUPPORTED
+ perimeta_subinterface_name_prefix:
+ type: string
+ description: Combined with subinterface_instance_index, this is used as the name of the subinterface resource
+ required: true
+ status: SUPPORTED
+ perimeta_vlan_networks:
+ type: list
+ description: List of Contrail VLAN networks to use for the subinterfaces. The order and number of these must match the VLAN ID list
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_subinterface_instance_index:
+ type: float
+ description: Index of instance among multiple instances. Use to retrieve correct parameter for this instance when passed all parameters for all instances.
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ perimeta_ip_0:
+ type: string
+ description: IPv4 address associated with subinterfaces
+ required: true
+ status: SUPPORTED
+ perimeta_vip_0:
+ type: string
+ description: virtual IPv4 address associated with subinterfaces
+ required: true
+ status: SUPPORTED
+ perimeta_vlan_ids:
+ type: list
+ description: List of VLAN IDs to use for subinterfaces
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_mac_address:
+ type: string
+ description: MAC address to use for subinterface
+ required: true
+ status: SUPPORTED
+ perimeta_v6_ip_0:
+ type: string
+ description: IPv6 address associated with subinterfaces
+ required: true
+ status: SUPPORTED
+ org.openecomp.resource.abstract.nodes.heat.module_2_perimeta_sw_b_child:
+ derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute
+ properties:
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ required: true
+ status: SUPPORTED
+ int_ha_network_plen:
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ rtp_msc_b_untrusted_v6_ips:
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access alternate fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_b_mgmt_ips:
+ type: list
+ description: List of fixed IP addresses to use as management IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ required: true
+ status: SUPPORTED
+ perimeta_untrusted_vlan_ids:
+ type: list
+ description: List of VLAN IDs to use on the untrusted/access network
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_b_names:
+ type: list
+ description: List of names of Perimeta VM B instances, indexed by perimeta_instance_index
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_b_untrusted_ips:
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ int_ha_net_id:
+ type: string
+ description: HA network id
+ required: true
+ status: SUPPORTED
+ perimeta_instance_index:
+ type: float
+ description: Index of instance among multiple instances. Use to retrieve correct parameter for this instance when passed all parameters for all instances.
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 0
+ - 19
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ required: true
+ status: SUPPORTED
+ perimeta_server_groups:
+ type: list
+ description: Server groups to use for these VMs
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vnf_id:
+ type: string
+ description: VNF ID of this deployment
+ required: true
+ status: SUPPORTED
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ required: true
+ status: SUPPORTED
+ rtp_msc_mgmt_vips:
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_sec_groups:
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_untrusted_parent_vips:
+ type: list
+ description: List of Untrusted/access parent virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_untrusted_num_vlans:
+ type: float
+ description: number of VLANs to connect to the untrusted/access interface
+ required: true
+ status: SUPPORTED
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ rtp_msc_a_int_ha_ips:
+ type: list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_b_trusted_ips:
+ type: list
+ description: List of fixed IP addresses to use as Trusted/core fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ rtp_msc_untrusted_vips:
+ type: list
+ description: List of Untrusted/access virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ trusted_net_id:
+ type: string
+ description: Trusted/core network UUID
+ required: true
+ status: SUPPORTED
+ rtp_msc_b_int_ha_ips:
+ type: list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ vm_role:
+ type: string
+ description: Role of these VMs
+ required: true
+ status: SUPPORTED
+ rtp_msc_untrusted_v6_vips:
+ type: list
+ description: List of Untrusted/access alternate virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_untrusted_vlan_networks:
+ type: list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ required: true
+ status: SUPPORTED
+ rtp_msc_b_untrusted_parent_ips:
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access parent fixed IPs of B instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ required: true
+ status: SUPPORTED
+ int_untrusted_parent_net_id:
+ type: string
+ description: internal Untrusted/access parent network id
+ required: true
+ status: SUPPORTED
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ required: true
+ status: SUPPORTED
+ rtp_msc_trusted_vips:
+ type: list
+ description: List of Trusted/core virtual IP addresses for all instances.
+ required: true
+ status: SUPPORTED
+ entry_schema:
+ type: string
+ requirements:
+ - dependency_perimeta_rtp_msc_b_trusted_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_rtp_msc_b_trusted_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_rtp_msc_b_mgmt_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_rtp_msc_b_mgmt_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_rtp_msc_b_server_0:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - local_storage_perimeta_rtp_msc_b_server_0:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - dependency_perimeta_rtp_msc_b_ha_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_rtp_msc_b_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ - dependency_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences:
+ - 0
+ - UNBOUNDED
+ - link_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ occurrences:
+ - 1
+ - 1
+ capabilities:
+ attachment_perimeta_rtp_msc_b_mgmt_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.requests_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_rtp_msc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_rtp_msc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_rtp_msc_b_trusted_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests.rate_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_rtp_msc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_rtp_msc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.latency_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_rtp_msc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes.rate_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_b_server_0:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_rtp_msc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.ephemeral.size_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_rtp_msc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_rtp_msc_b_ha_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.capacity_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_rtp_msc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.capacity_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_b_ha_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ disk.device.usage_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.allocation_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests.rate_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_rtp_msc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.root.size_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu_util_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.latency_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ attachment_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: tosca.capabilities.Attachment
+ occurrences:
+ - 1
+ - UNBOUNDED
+ os_perimeta_rtp_msc_b_server_0:
+ type: tosca.capabilities.OperatingSystem
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes.rate_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_rtp_msc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.bytes_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_rtp_msc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_rtp_msc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.iops_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_rtp_msc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_rtp_msc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_rtp_msc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ instance_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.requests.rate_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes_perimeta_rtp_msc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_rtp_msc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ vcpus_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.resident_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes_perimeta_rtp_msc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_b_mgmt_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ endpoint_perimeta_rtp_msc_b_server_0:
+ type: tosca.capabilities.Endpoint.Admin
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_rtp_msc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.requests_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_rtp_msc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.write.bytes.rate_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.packets.rate_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ memory.usage_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ scalable_perimeta_rtp_msc_b_server_0:
+ type: tosca.capabilities.Scalable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ cpu.delta_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.write.bytes_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.allocation_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.usage_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_b_mgmt_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ host_perimeta_rtp_msc_b_server_0:
+ type: tosca.capabilities.Container
+ valid_source_types:
+ - tosca.nodes.SoftwareComponent
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outpoing.packets_perimeta_rtp_msc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_b_trusted_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_b_trusted_0_port:
+ type: tosca.capabilities.network.Bindable
+ valid_source_types:
+ - org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface
+ occurrences:
+ - 0
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_rtp_msc_b_mgmt_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.bytes.rate_perimeta_rtp_msc_b_ha_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.iops_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.device.read.requests_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.incoming.bytes.rate_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ feature_perimeta_rtp_msc_b_ha_0_port:
+ type: tosca.capabilities.Node
+ occurrences:
+ - 1
+ - UNBOUNDED
+ binding_perimeta_rtp_msc_b_server_0:
+ type: tosca.capabilities.network.Bindable
+ occurrences:
+ - 1
+ - UNBOUNDED
+ network.outgoing.packets.rate_perimeta_rtp_msc_b_trusted_0_port:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED
+ disk.read.bytes.rate_perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.capabilities.metric.Ceilometer
+ description: A node type that includes the Metric capability indicates that it can be monitored using ceilometer.
+ occurrences:
+ - 1
+ - UNBOUNDED \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/MainServiceTemplate.yaml
new file mode 100644
index 0000000000..1993eeaf1a
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/MainServiceTemplate.yaml
@@ -0,0 +1,1302 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: Main
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+topology_template:
+ inputs:
+ ssc_a_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of VM A of SSC
+ constraints:
+ - pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,29}$'
+ mgmt_net_plen:
+ hidden: false
+ immutable: false
+ type: float
+ description: Management network prefix length
+ constraints:
+ - in_range:
+ - 0
+ - 32
+ ssc_b_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of VM B of SSC
+ constraints:
+ - pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,29}$'
+ ssc_b_untrusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on Untrusted/access network for SSC B.
+ ssc_b_untrusted_parent_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on Untrusted/access parent network for SSC B.
+ perimeta_untrusted_vlan_ids:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of VLAN IDs to use on the untrusted/access network
+ entry_schema:
+ type: string
+ ssc_json_radius_servername:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP Address or hostname of RADIUS server
+ ssc_mgmt_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management virtual IP address to use for SSC.
+ rtp_msc_json_use_radius_authentication:
+ hidden: false
+ immutable: false
+ type: string
+ description: Json prefix, used to indicate if user account authentication is done externally through Radius
+ constraints:
+ - valid_values:
+ - ' '
+ - '// not using Radius '
+ ssc_trusted_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Virtual IPv4 address on Trusted/core network for SSC.
+ ssc_untrusted_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Virtual IPv4 address on Untrusted/access network for SSC.
+ perimeta_untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ rtp_msc_mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management virtual IP addresses to use for RTP MSC.
+ entry_schema:
+ type: string
+ ssc_a_json_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ description: Json prefix, used to create the correct json file depending on the operation being performed
+ default: ' '
+ constraints:
+ - valid_values:
+ - ' '
+ - '// healing, not required '
+ rtp_msc_a_untrusted_parent_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IPv4 addresses on Untrusted/access parent network for RTP MSC A.
+ entry_schema:
+ type: string
+ ssc_b_trusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on Trusted/core network for SSC B.
+ shared_perimeta_ssc_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server group to use for these VMs
+ ssc_json_radius_timeout:
+ hidden: false
+ immutable: false
+ type: float
+ description: Timeout for connect requests to RADIUS server
+ constraints:
+ - in_range:
+ - 1
+ - 60
+ rtp_msc_untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of virtual IPv4 addresses on Untrusted/access network for RTP MSC.
+ entry_schema:
+ type: string
+ rtp_msc_json_radius_servername:
+ hidden: false
+ immutable: false
+ type: string
+ description: IP Address or hostname of RADIUS server
+ rtp_msc_vnfcnames:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of vnfc names of the RTP MSC. This is the name associated with the perimeta pair and corresponds to the VIP
+ entry_schema:
+ type: string
+ ssc_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image to use for launching SSC Perimeta instances.
+ default: ISBC_SBC_v4.0.40_SU12.qcow2
+ constraints: [
+ ]
+ perimeta_max_rtp_msc_count:
+ hidden: false
+ immutable: false
+ type: float
+ description: Max number of RTP MSCs in a site.
+ default: 8
+ constraints:
+ - in_range:
+ - 0
+ - 20
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Network ID of Trusted/core network.
+ constraints: [
+ ]
+ ntp_server_ip_addrs:
+ hidden: false
+ immutable: false
+ type: string
+ description: NTP server IPv4 addresses, separated by commas. These must be accessible from the management network
+ constraints:
+ - pattern: ((?:\d{1,3}\.){3}\d{1,3},)*((?:\d{1,3}\.){3}\d{1,3})
+ rtp_msc_json_radius_default:
+ hidden: false
+ immutable: false
+ type: string
+ description: Default authentication level for RADIUS users
+ constraints:
+ - valid_values:
+ - no-access
+ - read-only
+ - support
+ - restricted-admin
+ - admin
+ rtp_msc_a_vnfcnames:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of vnfc names of the A of RTP MSC
+ entry_schema:
+ type: string
+ ssc_b_untrusted_v6_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv6 address on Untrusted/access network for SSC B.
+ rtp_msc_b_index:
+ hidden: false
+ immutable: false
+ type: float
+ description: Index of RTP MSC to instantiate / heal.
+ constraints:
+ - in_range:
+ - 0
+ - 19
+ rtp_msc_untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of virtual IPv6 addresses on Untrusted/access network for RTP MSC.
+ entry_schema:
+ type: string
+ shared_ssc_unused_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unused network ID
+ ssc_b_rf_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: RF fixed IP address to use for SSC B.
+ rtp_msc_b_untrusted_parent_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IPv4 addresses on Untrusted/access parent network for RTP MSC B.
+ entry_schema:
+ type: string
+ ssc_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating SSC VM instance
+ default: gv.c8r16d160
+ constraints: [
+ ]
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network ID
+ constraints: [
+ ]
+ ssc_json_radius_secret:
+ hidden: false
+ immutable: false
+ type: string
+ description: Shared secret to use for the RADIUS Server
+ rtp_msc_a_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of names of VM A of RTP MSC
+ entry_schema:
+ type: string
+ shared_int_ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ constraints: [
+ ]
+ ssc_vnfcname_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of vnfc of SSC. This is the name associated with the perimeta pair and corresponds to the VIP
+ constraints:
+ - pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ rtp_msc_trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of virtual IPv4 addresses on Trusted/core network for RTP MSC.
+ entry_schema:
+ type: string
+ rtp_msc_json_radius_port:
+ hidden: false
+ immutable: false
+ type: float
+ description: Port to use to connect to RADIUS server
+ constraints:
+ - in_range:
+ - 0
+ - 65535
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF Module instance
+ ssc_json_radius_port:
+ hidden: false
+ immutable: false
+ type: float
+ description: Port to use to connect to RADIUS server
+ constraints:
+ - in_range:
+ - 0
+ - 65535
+ rtp_msc_b_untrusted_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IPv6 addresses on Untrusted/access network for RTP MSC B.
+ entry_schema:
+ type: string
+ rtp_msc_b_mgmt_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management fixed IP addresses to use for RTP MSC B.
+ entry_schema:
+ type: string
+ ssc_a_int_ha_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA fixed IP address to use for SSC A.
+ ssc_b_mgmt_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management fixed IP address to use for SSC B.
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance
+ rtp_msc_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating RTP MSC VM instance
+ default: gv.c8r16d160
+ constraints: [
+ ]
+ perimeta_int_ha_net_prefix_v4:
+ hidden: false
+ immutable: false
+ type: string
+ description: IPv4 subnet prefix for internal HA network
+ default: 172.26.1.4
+ rtp_msc_b_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of names of VM B of RTP MSC
+ entry_schema:
+ type: string
+ rtp_msc_b_untrusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IPv4 addresses on Untrusted/access network for RTP MSC B.
+ entry_schema:
+ type: string
+ perimeta_ssh_key:
+ hidden: false
+ immutable: false
+ type: string
+ description: SSH public key
+ default: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDXvSadEWp+nsz3gEAAAAAAAAAAbggQ3t06mqFIauHfUYMiKZ3EUX3jDFf/uGQoNsIZU6SNE/gl3tY4fFvO8Yzj8OY/vstHHvEadbY5aXNE6kd39ik20uRNbeZLT+pRllBwVKBSVnFqG3kBDvNWmBIenlPZzu3Ay0LYT/aDq6fZaz8Mqy8hzhpAAAAAAAAAAEmS/ESYY4UMs/aF2fVGmCLqudSjLpSsyD8lXag2dmeiT7cTdwRkgtDNTULXCPVucolVZwZF9BxXPNK++B+fL/ZY4MrXHXgZYGEElrMCFYkQFb3jQv3XQtxZ6gVByrzgGc9eiU7tkCgY2cVfb22iIs9n Generated-by-Nova
+ rtp_msc_a_index:
+ hidden: false
+ immutable: false
+ type: float
+ description: Index of RTP MSC to instantiate / heal.
+ constraints:
+ - in_range:
+ - 0
+ - 19
+ rtp_msc_json_v41:
+ hidden: false
+ immutable: false
+ type: string
+ description: Json prefix, used to ensure that the json tags will be recognised by the server loading them
+ default: ' '
+ constraints:
+ - valid_values:
+ - ' '
+ - '// older perimeta, parameter not required '
+ shared_perimeta_rtp_msc_server_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: Server group to use for these VMs
+ entry_schema:
+ type: string
+ rtp_msc_a_json_prefix:
+ hidden: false
+ immutable: false
+ type: string
+ description: Json prefix, used to create the correct json file depending on the operation being performed
+ default: ' '
+ constraints:
+ - valid_values:
+ - ' '
+ - '// healing, not required '
+ ssc_b_int_ha_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA fixed IP address to use for SSC B.
+ rtp_msc_b_vnfcnames:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of vnfc names of VM B of RTP MSC
+ entry_schema:
+ type: string
+ ssc_a_trusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on Trusted/core network for SSC A.
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: ID of VNF
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for A instances.
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for B instances.
+ perimeta_int_ha_net_prefix_len_v4:
+ hidden: false
+ immutable: false
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ default: 26
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ ssc_a_untrusted_v6_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv6 address on Untrusted/access network for SSC A.
+ rtp_msc_untrusted_parent_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of virtual IPv4 addresses on Untrusted/access parent network for RTP MSC.
+ entry_schema:
+ type: string
+ shared_int_ha_net_prefix_len_v4:
+ hidden: false
+ immutable: false
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ ssc_rf_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: RF virtual IP address to use for SSC.
+ rtp_msc_a_int_ha_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of HA fixed IP addresses to use for RTP MSC A.
+ entry_schema:
+ type: string
+ shared_perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ shared_int_untrusted_parent_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: untrusted parent network id
+ ssc_a_vnfcname_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: vnfc name of VM A of SSC
+ constraints:
+ - pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ rtp_msc_json_radius_secret:
+ hidden: false
+ immutable: false
+ type: string
+ description: Shared secret to use for the RADIUS Server
+ rtp_msc_b_trusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IPv4 addresses on Trusted/core network for RTP MSC B.
+ entry_schema:
+ type: string
+ rtp_msc_a_trusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IPv4 addresses on Trusted/core network for RTP MSC A.
+ entry_schema:
+ type: string
+ rtp_msc_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image to use for launching RTP MSC Perimeta instances.
+ default: ISBC_SBC_v4.0.40_SU12.qcow2
+ constraints: [
+ ]
+ ssc_a_mgmt_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management fixed IP address to use for SSC A.
+ ssc_untrusted_parent_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Virtual IPv4 address on Untrusted/access parent network for SSC.
+ rtp_msc_b_int_ha_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of HA fixed IP addresses to use for RTP MSC B.
+ entry_schema:
+ type: string
+ ssc_untrusted_v6_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Virtual IPv6 address on Untrusted/access network for SSC.
+ rtp_msc_a_mgmt_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management fixed IP addresses to use for RTP MSC A.
+ entry_schema:
+ type: string
+ rtp_msc_a_untrusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IPv4 addresses on Untrusted/access network for RTP MSC A.
+ entry_schema:
+ type: string
+ ssc_a_rf_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: RF fixed IP address to use for SSC A.
+ ssc_json_use_radius_authentication:
+ hidden: false
+ immutable: false
+ type: string
+ description: Json prefix, used to indicate if user account authentication is done externally through Radius
+ constraints:
+ - valid_values:
+ - ' '
+ - '// not using Radius '
+ ssc_a_untrusted_parent_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on Untrusted/access parent network for SSC A.
+ perimeta_untrusted_vlan_networks:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ entry_schema:
+ type: string
+ ssc_a_untrusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IPv4 address on Untrusted/access network for SSC A.
+ rtp_msc_a_untrusted_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IPv6 addresses on Untrusted/access network for RTP MSC A.
+ entry_schema:
+ type: string
+ mgmt_net_default_gateway:
+ hidden: false
+ immutable: false
+ type: string
+ description: Default gateway for management network
+ rtp_msc_json_radius_timeout:
+ hidden: false
+ immutable: false
+ type: float
+ description: Timeout for connect requests to RADIUS server
+ constraints:
+ - in_range:
+ - 1
+ - 60
+ ssc_b_vnfcname_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: vnfc name of VM B of SSC
+ constraints:
+ - pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ ssc_json_v41:
+ hidden: false
+ immutable: false
+ type: string
+ description: Json prefix, used to ensure that the json tags will be recognised by the server loading them
+ default: ' '
+ constraints:
+ - valid_values:
+ - ' '
+ - '// older perimeta, parameter not required '
+ ssc_json_radius_default:
+ hidden: false
+ immutable: false
+ type: string
+ description: Default authentication level for RADIUS users
+ constraints:
+ - valid_values:
+ - no-access
+ - read-only
+ - support
+ - restricted-admin
+ - admin
+ shared_perimeta_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on all interfaces.
+ entry_schema:
+ type: string
+ node_templates:
+ perimeta_rtp_msc_a:
+ type: org.openecomp.resource.abstract.nodes.heat.module_2_perimeta_sw_a_child
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ int_ha_network_plen:
+ get_input: shared_int_ha_net_prefix_len_v4
+ perimeta_config:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - rtp_msc_a_template
+ params:
+ $RADIUS_SERVERNAME:
+ get_input: rtp_msc_json_radius_servername
+ $REMOTE_MGMT_IP_ADDR:
+ get_input:
+ - rtp_msc_b_mgmt_ips
+ - get_input: rtp_msc_a_index
+ $VIRT_MGMT_IP_ADDR:
+ get_input:
+ - rtp_msc_mgmt_vips
+ - get_input: rtp_msc_a_index
+ $LOCAL_MGMT_IP_ADDR:
+ get_input:
+ - rtp_msc_a_mgmt_ips
+ - get_input: rtp_msc_a_index
+ $MGMT_NETWORK_DEFAULT_GATEWAY:
+ get_input: mgmt_net_default_gateway
+ $RADIUS_DEFAULT:
+ get_input: rtp_msc_json_radius_default
+ $COMPLETION_PARAMS: ''
+ $RADIUS_PORT:
+ get_input: rtp_msc_json_radius_port
+ $NTP_SERVER_IP_ADDRS:
+ get_input: ntp_server_ip_addrs
+ $HEALING_OR_INSTANTIATION:
+ get_input: rtp_msc_a_json_prefix
+ $RADIUS_SECRET:
+ get_input: rtp_msc_json_radius_secret
+ $RADIUS_TIMEOUT:
+ get_input: rtp_msc_json_radius_timeout
+ $41ORABOVE:
+ get_input: rtp_msc_json_v41
+ $SYSTEM_NAME:
+ get_input:
+ - rtp_msc_vnfcnames
+ - get_input: rtp_msc_a_index
+ $USERADIUSAUTH:
+ get_input: rtp_msc_json_use_radius_authentication
+ $MGMT_NETWORK_PLEN:
+ get_input: mgmt_net_plen
+ $VM_NAME_A:
+ get_input:
+ - rtp_msc_a_vnfcnames
+ - get_input: rtp_msc_a_index
+ $VM_NAME_B:
+ get_input:
+ - rtp_msc_b_vnfcnames
+ - get_input: rtp_msc_a_index
+ vnf_name:
+ get_input: vnf_name
+ perimeta_untrusted_vlan_ids:
+ get_input: perimeta_untrusted_vlan_ids
+ int_ha_net_id:
+ get_input: shared_int_ha_net_id
+ perimeta_instance_index:
+ get_input: rtp_msc_a_index
+ service_template_filter:
+ substitute_service_template: module_2_perimeta_sw_a_childServiceTemplate.yaml
+ perimeta_keypair:
+ get_input: shared_perimeta_keypair
+ perimeta_server_groups:
+ get_input: shared_perimeta_rtp_msc_server_groups
+ vnf_id:
+ get_input: vnf_id
+ availability_zone_0:
+ get_input: availability_zone_0
+ rtp_msc_mgmt_vips:
+ get_input: rtp_msc_mgmt_vips
+ perimeta_sec_groups:
+ get_input: shared_perimeta_sec_groups
+ rtp_msc_untrusted_parent_vips:
+ get_input: rtp_msc_untrusted_parent_vips
+ perimeta_untrusted_num_vlans:
+ get_input: perimeta_untrusted_num_vlans
+ rtp_msc_a_int_ha_ips:
+ get_input: rtp_msc_a_int_ha_ips
+ rtp_msc_a_untrusted_parent_ips:
+ get_input: rtp_msc_a_untrusted_parent_ips
+ rtp_msc_a_trusted_ips:
+ get_input: rtp_msc_a_trusted_ips
+ rtp_msc_untrusted_vips:
+ get_input: rtp_msc_untrusted_vips
+ trusted_net_id:
+ get_input: trusted_net_id
+ rtp_msc_b_int_ha_ips:
+ get_input: rtp_msc_b_int_ha_ips
+ rtp_msc_a_mgmt_ips:
+ get_input: rtp_msc_a_mgmt_ips
+ rtp_msc_a_untrusted_ips:
+ get_input: rtp_msc_a_untrusted_ips
+ vm_role: msc
+ rtp_msc_untrusted_v6_vips:
+ get_input: rtp_msc_untrusted_v6_vips
+ perimeta_untrusted_vlan_networks:
+ get_input: perimeta_untrusted_vlan_networks
+ rtp_msc_a_untrusted_v6_ips:
+ get_input: rtp_msc_a_untrusted_v6_ips
+ perimeta_image_name:
+ get_input: rtp_msc_image_name
+ mgmt_net_id:
+ get_input: mgmt_net_id
+ int_untrusted_parent_net_id:
+ get_input: shared_int_untrusted_parent_net_id
+ rtp_msc_a_names:
+ get_input: rtp_msc_a_names
+ perimeta_flavor_name:
+ get_input: rtp_msc_flavor_name
+ rtp_msc_trusted_vips:
+ get_input: rtp_msc_trusted_vips
+ requirements:
+ - link_perimeta_rtp_msc_a_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_internal_ha_net_0
+ relationship: tosca.relationships.network.LinksTo
+ - link_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_int_untrusted_parent_net_0
+ relationship: tosca.relationships.network.LinksTo
+ artifacts:
+ rtp_msc_a_template:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/rtp_msc_a_template.json
+ shared_perimeta_internal_ha_net_0:
+ type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
+ properties:
+ network_ipam_refs_data:
+ - network_ipam_refs_data_ipam_subnets:
+ - network_ipam_refs_data_ipam_subnets_enable_dhcp: false
+ network_ipam_refs_data_ipam_subnets_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
+ get_input: perimeta_int_ha_net_prefix_len_v4
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
+ get_input: perimeta_int_ha_net_prefix_v4
+ network_name:
+ str_replace:
+ template: $VF_NAME_int_ha_net_0
+ params:
+ $VF_NAME:
+ get_input: vnf_name
+ network_ipam_refs:
+ - UNSUPPORTED_RESOURCE_perimeta_internal_ha_ipam_net_0
+ perimeta_rtp_msc_b:
+ type: org.openecomp.resource.abstract.nodes.heat.module_2_perimeta_sw_b_child
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ int_ha_network_plen:
+ get_input: shared_int_ha_net_prefix_len_v4
+ rtp_msc_b_untrusted_v6_ips:
+ get_input: rtp_msc_b_untrusted_v6_ips
+ rtp_msc_b_mgmt_ips:
+ get_input: rtp_msc_b_mgmt_ips
+ vnf_name:
+ get_input: vnf_name
+ perimeta_untrusted_vlan_ids:
+ get_input: perimeta_untrusted_vlan_ids
+ rtp_msc_b_names:
+ get_input: rtp_msc_b_names
+ rtp_msc_b_untrusted_ips:
+ get_input: rtp_msc_b_untrusted_ips
+ int_ha_net_id:
+ get_input: shared_int_ha_net_id
+ perimeta_instance_index:
+ get_input: rtp_msc_b_index
+ service_template_filter:
+ substitute_service_template: module_2_perimeta_sw_b_childServiceTemplate.yaml
+ perimeta_keypair:
+ get_input: shared_perimeta_keypair
+ perimeta_server_groups:
+ get_input: shared_perimeta_rtp_msc_server_groups
+ vnf_id:
+ get_input: vnf_id
+ availability_zone_1:
+ get_input: availability_zone_1
+ rtp_msc_mgmt_vips:
+ get_input: rtp_msc_mgmt_vips
+ perimeta_sec_groups:
+ get_input: shared_perimeta_sec_groups
+ rtp_msc_untrusted_parent_vips:
+ get_input: rtp_msc_untrusted_parent_vips
+ perimeta_untrusted_num_vlans:
+ get_input: perimeta_untrusted_num_vlans
+ rtp_msc_a_int_ha_ips:
+ get_input: rtp_msc_a_int_ha_ips
+ rtp_msc_b_trusted_ips:
+ get_input: rtp_msc_b_trusted_ips
+ rtp_msc_untrusted_vips:
+ get_input: rtp_msc_untrusted_vips
+ trusted_net_id:
+ get_input: trusted_net_id
+ rtp_msc_b_int_ha_ips:
+ get_input: rtp_msc_b_int_ha_ips
+ vm_role: msc
+ rtp_msc_untrusted_v6_vips:
+ get_input: rtp_msc_untrusted_v6_vips
+ perimeta_untrusted_vlan_networks:
+ get_input: perimeta_untrusted_vlan_networks
+ perimeta_image_name:
+ get_input: rtp_msc_image_name
+ rtp_msc_b_untrusted_parent_ips:
+ get_input: rtp_msc_b_untrusted_parent_ips
+ mgmt_net_id:
+ get_input: mgmt_net_id
+ int_untrusted_parent_net_id:
+ get_input: shared_int_untrusted_parent_net_id
+ perimeta_flavor_name:
+ get_input: rtp_msc_flavor_name
+ rtp_msc_trusted_vips:
+ get_input: rtp_msc_trusted_vips
+ requirements:
+ - link_perimeta_rtp_msc_b_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_internal_ha_net_0
+ relationship: tosca.relationships.network.LinksTo
+ - link_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_int_untrusted_parent_net_0
+ relationship: tosca.relationships.network.LinksTo
+ perimeta_ssc_a:
+ type: org.openecomp.resource.abstract.nodes.heat.module_1_perimeta_swmu_a_child
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ ssc_a_name_0:
+ get_input: ssc_a_name_0
+ int_ha_network_plen:
+ get_input: shared_int_ha_net_prefix_len_v4
+ perimeta_server_group:
+ get_input: shared_perimeta_ssc_server_group
+ unused_port_net_id:
+ get_input: shared_ssc_unused_net_id
+ perimeta_config:
+ str_replace:
+ template:
+ get_artifact:
+ - SELF
+ - ssc_a_template
+ params:
+ $RADIUS_SERVERNAME:
+ get_input: ssc_json_radius_servername
+ $REMOTE_MGMT_IP_ADDR:
+ get_input: ssc_b_mgmt_ip_0
+ $VIRT_MGMT_IP_ADDR:
+ get_input: ssc_mgmt_vip_0
+ $LOCAL_MGMT_IP_ADDR:
+ get_input: ssc_a_mgmt_ip_0
+ $MGMT_NETWORK_DEFAULT_GATEWAY:
+ get_input: mgmt_net_default_gateway
+ $RADIUS_DEFAULT:
+ get_input: ssc_json_radius_default
+ $COMPLETION_PARAMS: ''
+ $RADIUS_PORT:
+ get_input: ssc_json_radius_port
+ $NTP_SERVER_IP_ADDRS:
+ get_input: ntp_server_ip_addrs
+ $HEALING_OR_INSTANTIATION:
+ get_input: ssc_a_json_prefix
+ $RADIUS_SECRET:
+ get_input: ssc_json_radius_secret
+ $RADIUS_TIMEOUT:
+ get_input: ssc_json_radius_timeout
+ $41ORABOVE:
+ get_input: ssc_json_v41
+ $SYSTEM_NAME:
+ get_input: ssc_vnfcname_0
+ $USERADIUSAUTH:
+ get_input: ssc_json_use_radius_authentication
+ $MGMT_NETWORK_PLEN:
+ get_input: mgmt_net_plen
+ $VM_NAME_A:
+ get_input: ssc_a_vnfcname_0
+ $VM_NAME_B:
+ get_input: ssc_b_vnfcname_0
+ ssc_a_int_ha_ip_0:
+ get_input: ssc_a_int_ha_ip_0
+ vnf_name:
+ get_input: vnf_name
+ perimeta_untrusted_vlan_ids:
+ get_input: perimeta_untrusted_vlan_ids
+ int_ha_net_id:
+ get_input: shared_int_ha_net_id
+ ssc_b_int_ha_ip_0:
+ get_input: ssc_b_int_ha_ip_0
+ ssc_mgmt_vip_0:
+ get_input: ssc_mgmt_vip_0
+ service_template_filter:
+ substitute_service_template: module_1_perimeta_swmu_a_childServiceTemplate.yaml
+ ssc_a_trusted_ip_0:
+ get_input: ssc_a_trusted_ip_0
+ perimeta_keypair:
+ get_input: shared_perimeta_keypair
+ vnf_id:
+ get_input: vnf_id
+ availability_zone_0:
+ get_input: availability_zone_0
+ ssc_trusted_vip_0:
+ get_input: ssc_trusted_vip_0
+ ssc_untrusted_vip_0:
+ get_input: ssc_untrusted_vip_0
+ perimeta_sec_groups:
+ get_input: shared_perimeta_sec_groups
+ ssc_a_untrusted_v6_ip_0:
+ get_input: ssc_a_untrusted_v6_ip_0
+ perimeta_untrusted_num_vlans:
+ get_input: perimeta_untrusted_num_vlans
+ ssc_rf_vip_0:
+ get_input: ssc_rf_vip_0
+ ssc_a_mgmt_ip_0:
+ get_input: ssc_a_mgmt_ip_0
+ trusted_net_id:
+ get_input: trusted_net_id
+ ssc_untrusted_parent_vip_0:
+ get_input: ssc_untrusted_parent_vip_0
+ ssc_untrusted_v6_vip_0:
+ get_input: ssc_untrusted_v6_vip_0
+ ssc_a_rf_ip_0:
+ get_input: ssc_a_rf_ip_0
+ vm_role: ssc
+ ssc_a_untrusted_parent_ip_0:
+ get_input: ssc_a_untrusted_parent_ip_0
+ perimeta_untrusted_vlan_networks:
+ get_input: perimeta_untrusted_vlan_networks
+ ssc_a_untrusted_ip_0:
+ get_input: ssc_a_untrusted_ip_0
+ perimeta_image_name:
+ get_input: ssc_image_name
+ mgmt_net_id:
+ get_input: mgmt_net_id
+ int_untrusted_parent_net_id:
+ get_input: shared_int_untrusted_parent_net_id
+ perimeta_flavor_name:
+ get_input: ssc_flavor_name
+ requirements:
+ - link_perimeta_ssc_a_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_internal_ha_net_0
+ relationship: tosca.relationships.network.LinksTo
+ - link_perimeta_ssc_a_untrusted_parent_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_int_untrusted_parent_net_0
+ relationship: tosca.relationships.network.LinksTo
+ - link_perimeta_ssc_a_unused_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_unused_net_0
+ relationship: tosca.relationships.network.LinksTo
+ artifacts:
+ ssc_a_template:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/ssc_a_template.json
+ shared_perimeta_rsg:
+ type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_shared_perimeta_RSG
+ params:
+ $VNF_NAME:
+ get_input: vnf_name
+ description: Security Group for Perimeta networks
+ rules:
+ - protocol: tcp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: egress
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: egress
+ - protocol: tcp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: egress
+ port_range_min: 1
+ - protocol: tcp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 1
+ - protocol: icmp
+ ethertype: IPv4
+ remote_ip_prefix: 0.0.0.0/0
+ direction: ingress
+ - protocol: icmp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ direction: ingress
+ - protocol: tcp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 1
+ - protocol: udp
+ ethertype: IPv6
+ remote_ip_prefix: ::/0
+ port_range_max: 65535
+ direction: ingress
+ port_range_min: 1
+ shared_perimeta_unused_net_0:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ dhcp_enabled: false
+ ip_version: 4
+ network_name:
+ str_replace:
+ template: $VF_NAME_int_unused_net
+ params:
+ $VF_NAME:
+ get_input: vnf_name
+ subnets:
+ shared_perimeta_unused_net_0_subnet:
+ enable_dhcp: false
+ ip_version: 4
+ cidr: 10.0.0.0/29
+ gateway_ip: ''
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: shared_perimeta_unused_net_0
+ relationship: tosca.relationships.DependsOn
+ perimeta_ssc_b:
+ type: org.openecomp.resource.abstract.nodes.heat.module_1_perimeta_swmu_b_child
+ directives:
+ - substitutable
+ properties:
+ vf_module_id:
+ get_input: vf_module_id
+ int_ha_network_plen:
+ get_input: shared_int_ha_net_prefix_len_v4
+ perimeta_server_group:
+ get_input: shared_perimeta_ssc_server_group
+ unused_port_net_id:
+ get_input: shared_ssc_unused_net_id
+ ssc_b_name_0:
+ get_input: ssc_b_name_0
+ ssc_a_int_ha_ip_0:
+ get_input: ssc_a_int_ha_ip_0
+ ssc_b_untrusted_ip_0:
+ get_input: ssc_b_untrusted_ip_0
+ ssc_b_mgmt_ip_0:
+ get_input: ssc_b_mgmt_ip_0
+ ssc_b_untrusted_parent_ip_0:
+ get_input: ssc_b_untrusted_parent_ip_0
+ vnf_name:
+ get_input: vnf_name
+ perimeta_untrusted_vlan_ids:
+ get_input: perimeta_untrusted_vlan_ids
+ int_ha_net_id:
+ get_input: shared_int_ha_net_id
+ ssc_b_int_ha_ip_0:
+ get_input: ssc_b_int_ha_ip_0
+ ssc_mgmt_vip_0:
+ get_input: ssc_mgmt_vip_0
+ service_template_filter:
+ substitute_service_template: module_1_perimeta_swmu_b_childServiceTemplate.yaml
+ perimeta_keypair:
+ get_input: shared_perimeta_keypair
+ vnf_id:
+ get_input: vnf_id
+ availability_zone_1:
+ get_input: availability_zone_1
+ ssc_trusted_vip_0:
+ get_input: ssc_trusted_vip_0
+ ssc_untrusted_vip_0:
+ get_input: ssc_untrusted_vip_0
+ perimeta_sec_groups:
+ get_input: shared_perimeta_sec_groups
+ perimeta_untrusted_num_vlans:
+ get_input: perimeta_untrusted_num_vlans
+ ssc_rf_vip_0:
+ get_input: ssc_rf_vip_0
+ ssc_b_trusted_ip_0:
+ get_input: ssc_b_trusted_ip_0
+ trusted_net_id:
+ get_input: trusted_net_id
+ ssc_untrusted_parent_vip_0:
+ get_input: ssc_untrusted_parent_vip_0
+ ssc_untrusted_v6_vip_0:
+ get_input: ssc_untrusted_v6_vip_0
+ ssc_b_untrusted_v6_ip_0:
+ get_input: ssc_b_untrusted_v6_ip_0
+ vm_role: ssc
+ perimeta_untrusted_vlan_networks:
+ get_input: perimeta_untrusted_vlan_networks
+ perimeta_image_name:
+ get_input: ssc_image_name
+ ssc_b_rf_ip_0:
+ get_input: ssc_b_rf_ip_0
+ mgmt_net_id:
+ get_input: mgmt_net_id
+ int_untrusted_parent_net_id:
+ get_input: shared_int_untrusted_parent_net_id
+ perimeta_flavor_name:
+ get_input: ssc_flavor_name
+ requirements:
+ - link_perimeta_ssc_b_untrusted_parent_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_int_untrusted_parent_net_0
+ relationship: tosca.relationships.network.LinksTo
+ - link_perimeta_ssc_b_unused_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_unused_net_0
+ relationship: tosca.relationships.network.LinksTo
+ - link_perimeta_ssc_b_ha_0_port:
+ capability: tosca.capabilities.network.Linkable
+ node: shared_perimeta_internal_ha_net_0
+ relationship: tosca.relationships.network.LinksTo
+ shared_perimeta_int_untrusted_parent_net_0:
+ type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
+ properties:
+ dhcp_enabled: false
+ ip_version: 4
+ network_name:
+ str_replace:
+ template: $VF_NAME_int_untrusted_parent_net
+ params:
+ $VF_NAME:
+ get_input: vnf_name
+ subnets:
+ shared_perimeta_int_untrusted_parent_net_0_subnet:
+ enable_dhcp: false
+ ip_version: 4
+ cidr: 11.0.0.0/24
+ gateway_ip: ''
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: shared_perimeta_int_untrusted_parent_net_0
+ relationship: tosca.relationships.DependsOn
+ groups:
+ base_perimeta_deployment_create_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/base_perimeta_deployment_create.yaml
+ description: |
+ HOT template to instantiate base shared resources for a Perimeta deployment
+ members:
+ - shared_perimeta_internal_ha_net_0
+ - shared_perimeta_rsg
+ - shared_perimeta_unused_net_0
+ - shared_perimeta_int_untrusted_parent_net_0
+ module_2_perimeta_rtp_msc_a_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_2_perimeta_rtp_msc_a.yaml
+ description: |
+ HOT template to instantiate an A side Perimeta RTP MSC and optionally partner it with the corresponding B side
+ members:
+ - perimeta_rtp_msc_a
+ module_1_perimeta_ssc_b_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_1_perimeta_ssc_b.yaml
+ description: "HOT template to instantiate an B side Perimeta SSC \n"
+ members:
+ - perimeta_ssc_b
+ shared_perimeta_ssc_server_gp_group:
+ type: tosca.groups.Root
+ members: [
+ ]
+ module_2_perimeta_rtp_msc_b_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_2_perimeta_rtp_msc_b.yaml
+ description: "HOT template to instantiate an B side Perimeta RTP MSC \n"
+ members:
+ - perimeta_rtp_msc_b
+ module_1_perimeta_ssc_a_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_1_perimeta_ssc_a.yaml
+ description: |
+ HOT template to instantiate an A side Perimeta SSC and optionally partner it with the corresponding B side
+ members:
+ - perimeta_ssc_a
+ outputs:
+ shared_int_ha_net_prefix_len_v4:
+ description: HA internal network IPv4 prefix length
+ value:
+ get_input: perimeta_int_ha_net_prefix_len_v4
+ shared_perimeta_keypair:
+ description: SSH keypair for deployment
+ value: UNSUPPORTED_RESOURCE_shared_perimeta_keypair
+ shared_perimeta_rtp_msc_server_groups:
+ description: Perimeta RTP MSC Server groups
+ value:
+ list_join:
+ - ','
+ - get_attr:
+ - shared_perimeta_rtp_msc_server_gps
+ - refs
+ policies:
+ shared_perimeta_ssc_server_gp_policy:
+ type: org.openecomp.policies.placement.Antilocate
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_shared_ssc_RSG_name_0
+ params:
+ $VNF_NAME:
+ get_input: vnf_name
+ container_type: host
+ targets:
+ - shared_perimeta_ssc_server_gp_group
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_1_perimeta_swmu_a_childServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_1_perimeta_swmu_a_childServiceTemplate.yaml
new file mode 100644
index 0000000000..8f8aae3642
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_1_perimeta_swmu_a_childServiceTemplate.yaml
@@ -0,0 +1,831 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: module_1_perimeta_swmu_a_child
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ssc_a:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF Module instance
+ ssc_a_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Perimeta VM A instance
+ int_ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ unused_port_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network unused port network UUID
+ perimeta_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server group to use for these VMs
+ perimeta_config:
+ hidden: false
+ immutable: false
+ type: string
+ description: JSON orchestration template configuration for instance.
+ ssc_a_int_ha_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as HA IP of A instance.
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance
+ perimeta_untrusted_vlan_ids:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of VLAN IDs to use on the untrusted/access network
+ entry_schema:
+ type: string
+ int_ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ ssc_b_int_ha_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as HA IPs of B instance.
+ ssc_mgmt_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management virtual IP address.
+ ssc_a_trusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as Trusted/core fixed IPs of A instance.
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID of this deployment
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for A instances.
+ ssc_trusted_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Trusted/core virtual IP address.
+ ssc_untrusted_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Untrusted/access virtual IP address
+ perimeta_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ ssc_a_untrusted_v6_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as Untrusted/access alternate fixed IP of A instance.
+ perimeta_untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ ssc_rf_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: RF virtual IP address to use for SSC.
+ ssc_a_mgmt_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as management IP of A instance.
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Trusted/core network UUID
+ ssc_untrusted_parent_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Untrusted/access parent virtual IP address
+ ssc_untrusted_v6_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Untrusted/access alternate virtual IP address
+ ssc_a_rf_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: RF fixed IP address to use for SSC A.
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ ssc_a_untrusted_parent_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of A parent instance.
+ perimeta_untrusted_vlan_networks:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ entry_schema:
+ type: string
+ ssc_a_untrusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of A instance.
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ int_untrusted_parent_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: internal Untrusted/access parent network id
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ node_templates:
+ perimeta_ssc_a_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_a_int_ha_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_ha_port
+ params:
+ $VM:
+ get_input: ssc_a_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: int_ha
+ network:
+ get_input: int_ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_a_untrusted_parent_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_a_untrusted_parent_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: ssc_untrusted_parent_vip_0
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_parent_port
+ params:
+ $VM:
+ get_input: ssc_a_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: int_untrusted_parent
+ network:
+ get_input: int_untrusted_parent_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_a_mgmt_1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_a_rf_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: ssc_rf_vip_0
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_1_port
+ params:
+ $VM:
+ get_input: ssc_a_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: mgmt
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_a_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_a_trusted_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: ssc_trusted_vip_0
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_trusted_port
+ params:
+ $VM:
+ get_input: ssc_a_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: trusted
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_a_unused_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_unused_port
+ params:
+ $VM:
+ get_input: ssc_a_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: unused_port
+ network:
+ get_input: unused_port_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_a_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_a_mgmt_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: ssc_mgmt_vip_0
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_0_port
+ params:
+ $VM:
+ get_input: ssc_a_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: mgmt
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_a_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.ssc_a
+ properties:
+ flavor:
+ get_input: perimeta_flavor_name
+ key_name:
+ get_input: perimeta_keypair
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: perimeta_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vm_role:
+ str_replace:
+ template: $ROLE_a
+ params:
+ $ROLE:
+ get_input: vm_role
+ vnf_id:
+ get_input: vnf_id
+ vnf_name:
+ get_input: vnf_name
+ msw_template_version: 17.07.04 - 2017-09-01
+ config_drive: true
+ personality:
+ /opt/MetaSwitch/init/custom.ini:
+ get_artifact:
+ - SELF
+ - custom
+ user_data_format: RAW
+ name:
+ get_input: ssc_a_name_0
+ scheduler_hints:
+ group:
+ get_input: perimeta_server_group
+ artifacts:
+ custom:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/custom.ini
+ groups:
+ module_1_perimeta_swmu_a_child_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_1_perimeta_swmu_a_child.yaml
+ description: |
+ HOT template to instantiate an A side Perimeta SSC instance with 6 vNICs as part of a nested template
+ members:
+ - perimeta_ssc_a_ha_0_port
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - perimeta_ssc_a_mgmt_1_port
+ - perimeta_ssc_a_trusted_0_port
+ - perimeta_ssc_a_unused_0_port
+ - perimeta_ssc_a_mgmt_0_port
+ - perimeta_ssc_a_server_0
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.module_1_perimeta_swmu_a_child
+ capabilities:
+ disk.ephemeral.size_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.ephemeral.size
+ network.outgoing.packets.rate_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - network.outgoing.packets.rate
+ network.incoming.bytes.rate_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - network.outgoing.bytes.rate
+ network.incoming.bytes.rate_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - network.incoming.packets
+ instance_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - instance
+ network.incoming.packets_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - network.incoming.packets
+ network.outgoing.packets.rate_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - network.outgoing.packets.rate
+ feature_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - feature
+ binding_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - binding
+ network.outpoing.packets_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - network.outpoing.packets
+ network.incoming.packets_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - network.incoming.packets
+ endpoint_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - endpoint
+ network.outgoing.bytes_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - network.outgoing.bytes
+ memory.usage_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - memory.usage
+ network.incoming.packets.rate_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - network.incoming.packets.rate
+ disk.device.read.requests.rate_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.read.requests.rate
+ network.incoming.bytes_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - network.outgoing.bytes.rate
+ network.outgoing.packets.rate_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - network.outgoing.packets.rate
+ feature_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - feature
+ disk.read.bytes_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.read.bytes
+ network.outpoing.packets_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - network.outpoing.packets
+ attachment_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - attachment
+ disk.write.bytes.rate_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.write.bytes.rate
+ disk.device.write.requests.rate_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.write.requests.rate
+ network.incoming.packets_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - network.incoming.packets
+ memory_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - memory
+ network.outgoing.packets.rate_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - network.outgoing.packets.rate
+ feature_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - feature
+ disk.device.iops_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.iops
+ binding_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - binding
+ network.outgoing.bytes_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - network.outgoing.bytes
+ attachment_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - attachment
+ network.outgoing.bytes.rate_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - network.outgoing.bytes
+ disk.write.requests_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.write.requests
+ network.outgoing.bytes_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - network.outgoing.bytes
+ disk.capacity_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.capacity
+ os_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - os
+ disk.read.bytes.rate_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.read.bytes.rate
+ network.outgoing.bytes.rate_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - network.outgoing.bytes.rate
+ network.incoming.bytes.rate_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - network.outgoing.bytes
+ network.outpoing.packets_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - network.outpoing.packets
+ cpu_util_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - cpu_util
+ attachment_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - attachment
+ network.outgoing.bytes.rate_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - network.outgoing.bytes.rate
+ disk.allocation_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.allocation
+ disk.write.bytes_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.write.bytes
+ attachment_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - attachment
+ feature_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - feature
+ network.outpoing.packets_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - network.outpoing.packets
+ network.incoming.bytes_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - network.incoming.bytes
+ network.incoming.packets_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - network.incoming.packets
+ disk.device.latency_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.latency
+ network.incoming.bytes.rate_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - network.incoming.bytes.rate
+ binding_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - binding
+ disk.read.requests_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.read.requests
+ attachment_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - attachment
+ scalable_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - scalable
+ disk.usage_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.usage
+ feature_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - feature
+ network.incoming.packets.rate_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - network.incoming.packets.rate
+ feature_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - feature
+ cpu.delta_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - cpu.delta
+ disk.device.usage_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.usage
+ disk.iops_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.iops
+ binding_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - binding
+ network.incoming.bytes_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - network.incoming.bytes
+ network.incoming.packets_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - network.incoming.packets
+ disk.device.read.bytes.rate_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.read.bytes.rate
+ network.incoming.packets.rate_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - network.incoming.packets.rate
+ binding_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - binding
+ disk.root.size_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.root.size
+ network.incoming.bytes_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - network.incoming.bytes
+ network.incoming.packets.rate_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - network.incoming.packets.rate
+ disk.device.allocation_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.allocation
+ disk.device.write.requests_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.write.requests
+ disk.device.write.bytes_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.write.bytes
+ disk.write.requests.rate_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.write.requests.rate
+ network.outpoing.packets_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - network.outpoing.packets
+ disk.device.read.bytes_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.read.bytes
+ network.outgoing.bytes_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - network.outgoing.bytes
+ network.incoming.bytes_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - network.incoming.bytes
+ cpu_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - cpu
+ binding_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - binding
+ network.outgoing.packets.rate_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - network.outgoing.packets.rate
+ disk.device.read.requests_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.read.requests
+ network.outgoing.packets.rate_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - network.outgoing.packets.rate
+ disk.device.write.bytes.rate_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.write.bytes.rate
+ feature_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - feature
+ host_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - host
+ network.incoming.packets.rate_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - network.incoming.packets.rate
+ network.outpoing.packets_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - network.outpoing.packets
+ network.incoming.packets.rate_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - network.incoming.packets.rate
+ attachment_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - attachment
+ disk.device.capacity_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.device.capacity
+ binding_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - binding
+ vcpus_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - vcpus
+ network.incoming.bytes_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - network.incoming.bytes
+ network.incoming.bytes.rate_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - network.incoming.bytes.rate
+ disk.latency_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - disk.latency
+ memory.resident_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - memory.resident
+ network.incoming.bytes.rate_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - network.incoming.bytes.rate
+ requirements:
+ dependency_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - dependency
+ dependency_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - dependency
+ dependency_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - dependency
+ link_perimeta_ssc_a_mgmt_1_port:
+ - perimeta_ssc_a_mgmt_1_port
+ - link
+ local_storage_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - local_storage
+ link_perimeta_ssc_a_untrusted_parent_0_port:
+ - perimeta_ssc_a_untrusted_parent_0_port
+ - link
+ dependency_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - dependency
+ dependency_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - dependency
+ link_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - link
+ link_perimeta_ssc_a_trusted_0_port:
+ - perimeta_ssc_a_trusted_0_port
+ - link
+ link_perimeta_ssc_a_ha_0_port:
+ - perimeta_ssc_a_ha_0_port
+ - link
+ link_perimeta_ssc_a_unused_0_port:
+ - perimeta_ssc_a_unused_0_port
+ - link
+ dependency_perimeta_ssc_a_mgmt_0_port:
+ - perimeta_ssc_a_mgmt_0_port
+ - dependency
+ dependency_perimeta_ssc_a_server_0:
+ - perimeta_ssc_a_server_0
+ - dependency \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_1_perimeta_swmu_b_childServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_1_perimeta_swmu_b_childServiceTemplate.yaml
new file mode 100644
index 0000000000..99285a3be6
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_1_perimeta_swmu_b_childServiceTemplate.yaml
@@ -0,0 +1,817 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: module_1_perimeta_swmu_b_child
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.ssc_b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF Module instance
+ int_ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ unused_port_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Service network unused port network UUID
+ perimeta_server_group:
+ hidden: false
+ immutable: false
+ type: string
+ description: Server group to use for these VMs
+ ssc_b_name_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Name of Perimeta VM B instance
+ ssc_a_int_ha_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as HA IPs of A instance.
+ ssc_b_untrusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of B instance.
+ ssc_b_mgmt_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as management IP of B instance.
+ ssc_b_untrusted_parent_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of B parent instance.
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance
+ perimeta_untrusted_vlan_ids:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of VLAN IDs to use on the untrusted/access network
+ entry_schema:
+ type: string
+ int_ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ ssc_b_int_ha_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as HA IP of B instance.
+ ssc_mgmt_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management virtual IP address.
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID of this deployment
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ ssc_trusted_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Trusted/core virtual IP address.
+ ssc_untrusted_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Untrusted/access virtual IP address
+ perimeta_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ perimeta_untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ ssc_rf_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: RF virtual IP address to use for SSC.
+ ssc_b_trusted_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as Trusted/core fixed IPs of B instance.
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Trusted/core network UUID
+ ssc_untrusted_parent_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Untrusted/access parent virtual IP address
+ ssc_untrusted_v6_vip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Untrusted/access alternate virtual IP address
+ ssc_b_untrusted_v6_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Fixed IP address to use as Untrusted/access alternate fixed IP of B instance.
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ perimeta_untrusted_vlan_networks:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ ssc_b_rf_ip_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: RF fixed IP address to use for SSC B.
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ int_untrusted_parent_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: internal Untrusted/access parent network id
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ node_templates:
+ perimeta_ssc_b_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_b_trusted_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: ssc_trusted_vip_0
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_trusted_port
+ params:
+ $VM:
+ get_input: ssc_b_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: trusted
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_b_untrusted_parent_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_b_untrusted_parent_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: ssc_untrusted_parent_vip_0
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_parent_port
+ params:
+ $VM:
+ get_input: ssc_b_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: int_untrusted_parent
+ network:
+ get_input: int_untrusted_parent_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_b_mgmt_1_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_b_rf_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: ssc_rf_vip_0
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_1_port
+ params:
+ $VM:
+ get_input: ssc_b_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: mgmt
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_b_unused_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: false
+ floating_ip_count_required:
+ is_required: false
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_unused_port
+ params:
+ $VM:
+ get_input: ssc_b_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: unused_port
+ network:
+ get_input: unused_port_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_b_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.ssc_b
+ properties:
+ flavor:
+ get_input: perimeta_flavor_name
+ key_name:
+ get_input: perimeta_keypair
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: perimeta_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vm_role:
+ str_replace:
+ template: $ROLE_b
+ params:
+ $ROLE:
+ get_input: vm_role
+ vnf_id:
+ get_input: vnf_id
+ vnf_name:
+ get_input: vnf_name
+ msw_template_version: 17.07.04 - 2017-09-01
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input: ssc_b_name_0
+ scheduler_hints:
+ group:
+ get_input: perimeta_server_group
+ perimeta_ssc_b_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: true
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_b_mgmt_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input: ssc_mgmt_vip_0
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_0_port
+ params:
+ $VM:
+ get_input: ssc_b_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: mgmt
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_ssc_b_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input: ssc_b_int_ha_ip_0
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_ha_port
+ params:
+ $VM:
+ get_input: ssc_b_name_0
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: int_ha
+ network:
+ get_input: int_ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_ssc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ module_1_perimeta_swmu_b_child_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_1_perimeta_swmu_b_child.yaml
+ description: |
+ HOT template to instantiate an B side Perimeta SSC instance with 6 vNICs as part of a nested template
+ members:
+ - perimeta_ssc_b_trusted_0_port
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - perimeta_ssc_b_mgmt_1_port
+ - perimeta_ssc_b_unused_0_port
+ - perimeta_ssc_b_server_0
+ - perimeta_ssc_b_mgmt_0_port
+ - perimeta_ssc_b_ha_0_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.module_1_perimeta_swmu_b_child
+ capabilities:
+ host_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - host
+ network.outgoing.packets.rate_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - network.outgoing.packets.rate
+ vcpus_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - vcpus
+ binding_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - binding
+ network.incoming.bytes_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - network.incoming.bytes
+ network.outpoing.packets_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - network.outpoing.packets
+ disk.write.requests_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.write.requests
+ os_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - os
+ memory_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - memory
+ disk.device.write.bytes.rate_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes.rate_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - network.outgoing.bytes.rate
+ disk.read.bytes_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.read.bytes
+ network.outpoing.packets_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - network.outpoing.packets
+ network.outgoing.packets.rate_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - network.outgoing.packets.rate
+ disk.device.allocation_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.allocation
+ network.outgoing.packets.rate_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - network.outgoing.packets.rate
+ disk.write.requests.rate_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.write.requests.rate
+ network.incoming.bytes.rate_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - network.incoming.bytes.rate
+ binding_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - binding
+ disk.device.iops_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.iops
+ network.outgoing.packets.rate_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - network.outgoing.packets.rate
+ disk.device.usage_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.usage
+ cpu_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - cpu
+ feature_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - feature
+ network.outgoing.bytes.rate_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - network.outgoing.bytes.rate
+ feature_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - feature
+ endpoint_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - endpoint
+ feature_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - feature
+ disk.device.read.requests_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.read.requests
+ attachment_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - attachment
+ cpu.delta_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - cpu.delta
+ network.incoming.packets_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - network.incoming.packets
+ disk.device.write.requests_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.write.requests
+ disk.device.write.bytes_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.write.bytes
+ disk.root.size_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.root.size
+ network.incoming.bytes.rate_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - network.incoming.bytes.rate
+ memory.resident_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - memory.resident
+ network.incoming.packets.rate_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - network.incoming.packets.rate
+ disk.ephemeral.size_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.ephemeral.size
+ network.incoming.packets_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - network.incoming.packets
+ instance_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - instance
+ attachment_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - attachment
+ network.incoming.bytes_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - network.incoming.bytes
+ network.incoming.bytes_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - network.incoming.bytes
+ network.incoming.packets_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - network.incoming.packets
+ feature_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - feature
+ binding_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - binding
+ network.outpoing.packets_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - network.outpoing.packets
+ disk.device.read.bytes_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.read.bytes
+ network.outgoing.bytes.rate_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - network.outgoing.bytes.rate
+ disk.latency_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.latency
+ network.outgoing.bytes_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - network.outgoing.bytes
+ attachment_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - attachment
+ binding_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - binding
+ network.outgoing.bytes.rate_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - network.outgoing.bytes
+ network.incoming.packets.rate_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - network.incoming.packets.rate
+ disk.device.capacity_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.capacity
+ feature_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - feature
+ network.incoming.bytes.rate_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - network.incoming.bytes.rate
+ binding_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - binding
+ binding_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - binding
+ scalable_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - scalable
+ disk.device.latency_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.latency
+ network.incoming.packets_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - network.incoming.packets
+ disk.write.bytes.rate_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.write.bytes.rate
+ disk.read.requests_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.read.requests
+ feature_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - feature
+ disk.usage_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.usage
+ attachment_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - attachment
+ attachment_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - attachment
+ network.outgoing.bytes.rate_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - network.outgoing.bytes.rate
+ disk.allocation_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.allocation
+ network.incoming.bytes.rate_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - network.outgoing.bytes
+ disk.iops_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.iops
+ disk.write.bytes_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.write.bytes
+ network.outpoing.packets_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - network.outpoing.packets
+ network.incoming.bytes_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - network.incoming.bytes
+ network.incoming.packets_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - network.incoming.packets
+ disk.device.read.requests.rate_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - network.incoming.packets.rate
+ network.incoming.packets_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - network.incoming.packets
+ network.outpoing.packets_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - network.outpoing.packets
+ network.outgoing.bytes_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - network.outgoing.bytes
+ network.incoming.bytes_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - network.incoming.bytes
+ network.incoming.packets.rate_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - network.incoming.packets.rate
+ memory.usage_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - memory.usage
+ network.incoming.bytes.rate_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - network.incoming.bytes.rate
+ network.incoming.packets.rate_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - network.incoming.packets.rate
+ network.outgoing.packets.rate_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - network.outgoing.packets.rate
+ network.incoming.bytes_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - network.incoming.bytes
+ network.outgoing.bytes_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - network.outgoing.bytes.rate
+ network.outgoing.packets.rate_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - network.outgoing.packets.rate
+ cpu_util_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - cpu_util
+ disk.device.read.bytes.rate_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.read.bytes.rate
+ disk.capacity_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.capacity
+ network.incoming.packets.rate_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - network.outgoing.bytes
+ network.outpoing.packets_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - network.outpoing.packets
+ disk.read.bytes.rate_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.read.bytes.rate
+ disk.device.write.requests.rate_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - disk.device.write.requests.rate
+ attachment_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - attachment
+ feature_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - feature
+ network.incoming.bytes.rate_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - network.incoming.bytes.rate
+ binding_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - binding
+ requirements:
+ link_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - link
+ dependency_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - dependency
+ dependency_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - dependency
+ dependency_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - dependency
+ local_storage_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - local_storage
+ link_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - link
+ dependency_perimeta_ssc_b_trusted_0_port:
+ - perimeta_ssc_b_trusted_0_port
+ - dependency
+ dependency_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - dependency
+ link_perimeta_ssc_b_mgmt_1_port:
+ - perimeta_ssc_b_mgmt_1_port
+ - link
+ link_perimeta_ssc_b_untrusted_parent_0_port:
+ - perimeta_ssc_b_untrusted_parent_0_port
+ - link
+ dependency_perimeta_ssc_b_server_0:
+ - perimeta_ssc_b_server_0
+ - dependency
+ link_perimeta_ssc_b_unused_0_port:
+ - perimeta_ssc_b_unused_0_port
+ - link
+ dependency_perimeta_ssc_b_mgmt_0_port:
+ - perimeta_ssc_b_mgmt_0_port
+ - dependency
+ link_perimeta_ssc_b_ha_0_port:
+ - perimeta_ssc_b_ha_0_port
+ - link \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_2_perimeta_sw_a_childServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_2_perimeta_sw_a_childServiceTemplate.yaml
new file mode 100644
index 0000000000..e1c87c0ea3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_2_perimeta_sw_a_childServiceTemplate.yaml
@@ -0,0 +1,735 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: module_2_perimeta_sw_a_child
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.rtp_msc_a:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF Module instance
+ int_ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ perimeta_config:
+ hidden: false
+ immutable: false
+ type: string
+ description: JSON orchestration template configuration for instance.
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance
+ perimeta_untrusted_vlan_ids:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of VLAN IDs to use on the untrusted/access network
+ entry_schema:
+ type: string
+ int_ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ perimeta_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ description: Index of instance among multiple instances. Use to retrieve correct parameter for this instance when passed all parameters for all instances.
+ constraints:
+ - in_range:
+ - 0
+ - 19
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ perimeta_server_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: Server groups to use for these VMs
+ entry_schema:
+ type: string
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID of this deployment
+ availability_zone_0:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for A instances.
+ rtp_msc_mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ perimeta_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ rtp_msc_untrusted_parent_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Untrusted/access parent virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ perimeta_untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ rtp_msc_a_int_ha_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ entry_schema:
+ type: string
+ rtp_msc_a_untrusted_parent_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access parent fixed IPs of A instances.
+ entry_schema:
+ type: string
+ rtp_msc_a_trusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as Trusted/core fixed IPs of A instances.
+ entry_schema:
+ type: string
+ rtp_msc_untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Untrusted/access virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Trusted/core network UUID
+ rtp_msc_b_int_ha_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ entry_schema:
+ type: string
+ rtp_msc_a_mgmt_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as management IPs of A instances.
+ entry_schema:
+ type: string
+ rtp_msc_a_untrusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access fixed IPs of A instances.
+ entry_schema:
+ type: string
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ rtp_msc_untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Untrusted/access alternate virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ perimeta_untrusted_vlan_networks:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ entry_schema:
+ type: string
+ rtp_msc_a_untrusted_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access alternate fixed IPs of A instances.
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ int_untrusted_parent_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: internal Untrusted/access parent network id
+ rtp_msc_a_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ entry_schema:
+ type: string
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ rtp_msc_trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Trusted/core virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ node_templates:
+ perimeta_rtp_msc_a_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - rtp_msc_a_trusted_ips
+ - get_input: perimeta_instance_index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - rtp_msc_trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - rtp_msc_a_names
+ - get_input: perimeta_instance_index
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: trusted
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_rtp_msc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_rtp_msc_a_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - rtp_msc_a_int_ha_ips
+ - get_input: perimeta_instance_index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - rtp_msc_a_names
+ - get_input: perimeta_instance_index
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: int_ha
+ network:
+ get_input: int_ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_rtp_msc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - rtp_msc_a_untrusted_parent_ips
+ - get_input: perimeta_instance_index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - rtp_msc_untrusted_parent_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_parent_port
+ params:
+ $VM:
+ get_input:
+ - rtp_msc_a_names
+ - get_input: perimeta_instance_index
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: int_untrusted_parent
+ network:
+ get_input: int_untrusted_parent_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_rtp_msc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_rtp_msc_a_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.rtp_msc_a
+ properties:
+ flavor:
+ get_input: perimeta_flavor_name
+ key_name:
+ get_input: perimeta_keypair
+ availability_zone:
+ get_input: availability_zone_0
+ image:
+ get_input: perimeta_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vm_role:
+ str_replace:
+ template: $ROLE_a
+ params:
+ $ROLE:
+ get_input: vm_role
+ vnf_id:
+ get_input: vnf_id
+ vnf_name:
+ get_input: vnf_name
+ msw_template_version: 17.07.04 - 2017-09-01
+ config_drive: true
+ personality:
+ /opt/MetaSwitch/init/custom.ini:
+ get_artifact:
+ - SELF
+ - custom
+ user_data_format: RAW
+ name:
+ get_input:
+ - rtp_msc_a_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group:
+ get_input:
+ - perimeta_server_groups
+ - get_input: perimeta_instance_index
+ artifacts:
+ custom:
+ type: tosca.artifacts.Deployment
+ file: ../Artifacts/custom.ini
+ perimeta_rtp_msc_a_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - rtp_msc_a_mgmt_ips
+ - get_input: perimeta_instance_index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - rtp_msc_mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_0_port
+ params:
+ $VM:
+ get_input:
+ - rtp_msc_a_names
+ - get_input: perimeta_instance_index
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: mgmt
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_rtp_msc_a_server_0
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ module_2_perimeta_sw_a_child_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_2_perimeta_sw_a_child.yaml
+ description: |
+ HOT template to instantiate an A side Perimeta RTP MSC instance with 4 vNICs as part of a nested template
+ members:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - perimeta_rtp_msc_a_ha_0_port
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - perimeta_rtp_msc_a_server_0
+ - perimeta_rtp_msc_a_mgmt_0_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.module_2_perimeta_sw_a_child
+ capabilities:
+ attachment_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - attachment
+ disk.device.read.requests_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.read.requests
+ attachment_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - attachment
+ feature_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - feature
+ disk.device.latency_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.latency
+ vcpus_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - vcpus
+ memory.resident_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - memory.resident
+ binding_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - binding
+ network.outgoing.packets.rate_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - network.outgoing.packets.rate
+ network.incoming.bytes_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - network.incoming.bytes
+ attachment_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - attachment
+ cpu_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - cpu
+ disk.capacity_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.capacity
+ network.outgoing.bytes_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - network.outgoing.bytes
+ network.outgoing.bytes.rate_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - network.outgoing.bytes.rate
+ disk.read.bytes_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.read.bytes
+ network.outgoing.bytes.rate_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - network.outgoing.bytes.rate
+ network.outpoing.packets_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - network.outpoing.packets
+ os_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - os
+ feature_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - feature
+ network.incoming.packets_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - network.incoming.packets
+ disk.device.allocation_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.allocation
+ disk.write.requests.rate_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.write.requests.rate
+ network.incoming.bytes.rate_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - network.incoming.bytes.rate
+ network.incoming.bytes_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - network.incoming.bytes
+ disk.device.iops_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.iops
+ feature_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - feature
+ network.incoming.bytes_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - network.incoming.bytes
+ network.incoming.bytes.rate_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - network.incoming.bytes.rate
+ network.incoming.bytes.rate_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - network.incoming.bytes.rate
+ disk.device.usage_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.usage
+ disk.write.bytes_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.write.bytes
+ attachment_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - attachment
+ network.outgoing.bytes_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - network.outgoing.bytes
+ feature_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - feature
+ disk.usage_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.usage
+ binding_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - binding
+ disk.iops_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.iops
+ disk.allocation_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.allocation
+ disk.device.write.bytes.rate_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.write.bytes.rate
+ disk.device.capacity_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.capacity
+ network.outpoing.packets_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - network.outpoing.packets
+ disk.ephemeral.size_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.ephemeral.size
+ network.incoming.packets_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - network.incoming.packets
+ cpu_util_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - cpu_util
+ network.outgoing.bytes.rate_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes.rate_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - network.outgoing.bytes.rate
+ network.incoming.packets_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - network.incoming.packets
+ scalable_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - scalable
+ host_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - host
+ disk.device.read.requests.rate_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.read.requests.rate
+ network.incoming.packets.rate_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - network.incoming.packets.rate
+ network.incoming.packets.rate_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - network.incoming.packets.rate
+ network.outgoing.bytes_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - network.outgoing.bytes
+ network.outpoing.packets_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - network.outpoing.packets
+ network.outpoing.packets_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - network.outpoing.packets
+ network.incoming.bytes_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - network.incoming.bytes
+ disk.root.size_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.root.size
+ network.incoming.packets.rate_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - network.incoming.packets.rate
+ network.outgoing.packets.rate_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - network.outgoing.packets.rate
+ disk.write.bytes.rate_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.write.bytes.rate
+ network.outgoing.packets.rate_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - network.outgoing.packets.rate
+ endpoint_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - endpoint
+ feature_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - feature
+ network.incoming.packets_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - network.incoming.packets
+ binding_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - binding
+ disk.device.write.requests.rate_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.write.requests.rate
+ binding_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - binding
+ instance_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - instance
+ disk.read.bytes.rate_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.read.bytes.rate
+ binding_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - binding
+ disk.latency_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.latency
+ network.incoming.packets.rate_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - network.incoming.packets.rate
+ disk.device.read.bytes_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.read.bytes
+ network.outgoing.packets.rate_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - network.outgoing.packets.rate
+ disk.read.requests_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.read.requests
+ disk.device.read.bytes.rate_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.read.bytes.rate
+ disk.device.write.bytes_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.write.bytes
+ network.incoming.bytes.rate_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - network.incoming.bytes.rate
+ memory_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - memory
+ network.outgoing.bytes_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - network.outgoing.bytes
+ disk.device.write.requests_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.device.write.requests
+ disk.write.requests_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - disk.write.requests
+ cpu.delta_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - cpu.delta
+ memory.usage_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - memory.usage
+ requirements:
+ link_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - link
+ local_storage_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - local_storage
+ dependency_perimeta_rtp_msc_a_server_0:
+ - perimeta_rtp_msc_a_server_0
+ - dependency
+ dependency_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - dependency
+ dependency_perimeta_rtp_msc_a_trusted_0_port:
+ - perimeta_rtp_msc_a_trusted_0_port
+ - dependency
+ dependency_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - dependency
+ link_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - link
+ link_perimeta_rtp_msc_a_ha_0_port:
+ - perimeta_rtp_msc_a_ha_0_port
+ - link
+ link_perimeta_rtp_msc_a_untrusted_parent_0_port:
+ - perimeta_rtp_msc_a_untrusted_parent_0_port
+ - link
+ dependency_perimeta_rtp_msc_a_mgmt_0_port:
+ - perimeta_rtp_msc_a_mgmt_0_port
+ - dependency \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_2_perimeta_sw_b_childServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_2_perimeta_sw_b_childServiceTemplate.yaml
new file mode 100644
index 0000000000..ce9748e1f7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/expectedoutputfiles/module_2_perimeta_sw_b_childServiceTemplate.yaml
@@ -0,0 +1,721 @@
+tosca_definitions_version: tosca_simple_yaml_1_0_0
+metadata:
+ template_name: module_2_perimeta_sw_b_child
+imports:
+- openecomp_heat_index:
+ file: openecomp-heat/_index.yml
+- GlobalSubstitutionTypes:
+ file: GlobalSubstitutionTypesServiceTemplate.yaml
+node_types:
+ org.openecomp.resource.vfc.nodes.heat.rtp_msc_b:
+ derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
+topology_template:
+ inputs:
+ vf_module_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique ID for this VF Module instance
+ int_ha_network_plen:
+ hidden: false
+ immutable: false
+ type: float
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - in_range:
+ - 0
+ - 31
+ rtp_msc_b_untrusted_v6_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access alternate fixed IPs of B instances.
+ entry_schema:
+ type: string
+ rtp_msc_b_mgmt_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as management IPs of B instances.
+ entry_schema:
+ type: string
+ vnf_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Unique name for this VNF instance
+ perimeta_untrusted_vlan_ids:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of VLAN IDs to use on the untrusted/access network
+ entry_schema:
+ type: string
+ rtp_msc_b_names:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of names of Perimeta VM B instances, indexed by perimeta_instance_index
+ entry_schema:
+ type: string
+ rtp_msc_b_untrusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access fixed IPs of B instances.
+ entry_schema:
+ type: string
+ int_ha_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: HA network id
+ perimeta_instance_index:
+ hidden: false
+ immutable: false
+ type: float
+ description: Index of instance among multiple instances. Use to retrieve correct parameter for this instance when passed all parameters for all instances.
+ constraints:
+ - in_range:
+ - 0
+ - 19
+ perimeta_keypair:
+ hidden: false
+ immutable: false
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ perimeta_server_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: Server groups to use for these VMs
+ entry_schema:
+ type: string
+ vnf_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: VNF ID of this deployment
+ availability_zone_1:
+ hidden: false
+ immutable: false
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ rtp_msc_mgmt_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of management virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ perimeta_sec_groups:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of security groups to add on trusted interfaces.
+ entry_schema:
+ type: string
+ rtp_msc_untrusted_parent_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Untrusted/access parent virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ perimeta_untrusted_num_vlans:
+ hidden: false
+ immutable: false
+ type: float
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - in_range:
+ - 1
+ - 1001
+ rtp_msc_a_int_ha_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ entry_schema:
+ type: string
+ rtp_msc_b_trusted_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as Trusted/core fixed IPs of B instances.
+ entry_schema:
+ type: string
+ rtp_msc_untrusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Untrusted/access virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ trusted_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Trusted/core network UUID
+ rtp_msc_b_int_ha_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ entry_schema:
+ type: string
+ vm_role:
+ hidden: false
+ immutable: false
+ type: string
+ description: Role of these VMs
+ rtp_msc_untrusted_v6_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Untrusted/access alternate virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ perimeta_untrusted_vlan_networks:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ entry_schema:
+ type: string
+ perimeta_image_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Glance image for Perimeta instance
+ rtp_msc_b_untrusted_parent_ips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of fixed IP addresses to use as Untrusted/access parent fixed IPs of B instances.
+ entry_schema:
+ type: string
+ mgmt_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: Management network id
+ int_untrusted_parent_net_id:
+ hidden: false
+ immutable: false
+ type: string
+ description: internal Untrusted/access parent network id
+ perimeta_flavor_name:
+ hidden: false
+ immutable: false
+ type: string
+ description: Flavor to use for creating VM instances
+ rtp_msc_trusted_vips:
+ hidden: false
+ immutable: false
+ type: list
+ description: List of Trusted/core virtual IP addresses for all instances.
+ entry_schema:
+ type: string
+ node_templates:
+ perimeta_rtp_msc_b_trusted_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - rtp_msc_b_trusted_ips
+ - get_input: perimeta_instance_index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - rtp_msc_trusted_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_trusted_port
+ params:
+ $VM:
+ get_input:
+ - rtp_msc_b_names
+ - get_input: perimeta_instance_index
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: trusted
+ network:
+ get_input: trusted_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_rtp_msc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_rtp_msc_b_mgmt_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - rtp_msc_b_mgmt_ips
+ - get_input: perimeta_instance_index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - rtp_msc_mgmt_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_0_port
+ params:
+ $VM:
+ get_input:
+ - rtp_msc_b_names
+ - get_input: perimeta_instance_index
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: mgmt
+ network:
+ get_input: mgmt_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_rtp_msc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_rtp_msc_b_server_0:
+ type: org.openecomp.resource.vfc.nodes.heat.rtp_msc_b
+ properties:
+ flavor:
+ get_input: perimeta_flavor_name
+ key_name:
+ get_input: perimeta_keypair
+ availability_zone:
+ get_input: availability_zone_1
+ image:
+ get_input: perimeta_image_name
+ metadata:
+ vf_module_id:
+ get_input: vf_module_id
+ vm_role:
+ str_replace:
+ template: $ROLE_b
+ params:
+ $ROLE:
+ get_input: vm_role
+ vnf_id:
+ get_input: vnf_id
+ vnf_name:
+ get_input: vnf_name
+ msw_template_version: 17.07.04 - 2017-09-01
+ config_drive: true
+ user_data_format: RAW
+ name:
+ get_input:
+ - rtp_msc_b_names
+ - get_input: perimeta_instance_index
+ scheduler_hints:
+ group:
+ get_input:
+ - perimeta_server_groups
+ - get_input: perimeta_instance_index
+ perimeta_rtp_msc_b_ha_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - rtp_msc_b_int_ha_ips
+ - get_input: perimeta_instance_index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_ha_port
+ params:
+ $VM:
+ get_input:
+ - rtp_msc_b_names
+ - get_input: perimeta_instance_index
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: int_ha
+ network:
+ get_input: int_ha_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_rtp_msc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
+ properties:
+ ip_requirements:
+ - ip_version: 4
+ ip_count_required:
+ is_required: true
+ floating_ip_count_required:
+ is_required: false
+ security_groups:
+ get_input: perimeta_sec_groups
+ fixed_ips:
+ - ip_address:
+ get_input:
+ - rtp_msc_b_untrusted_parent_ips
+ - get_input: perimeta_instance_index
+ mac_requirements:
+ mac_count_required:
+ is_required: false
+ allowed_address_pairs:
+ - ip_address:
+ get_input:
+ - rtp_msc_untrusted_parent_vips
+ - get_input: perimeta_instance_index
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_parent_port
+ params:
+ $VM:
+ get_input:
+ - rtp_msc_b_names
+ - get_input: perimeta_instance_index
+ $VNF_NAME:
+ get_input: vnf_name
+ network_role_tag: int_untrusted_parent
+ network:
+ get_input: int_untrusted_parent_net_id
+ requirements:
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ node: perimeta_rtp_msc_b_server_0
+ relationship: tosca.relationships.network.BindsTo
+ groups:
+ module_2_perimeta_sw_b_child_group:
+ type: org.openecomp.groups.heat.HeatStack
+ properties:
+ heat_file: ../Artifacts/module_2_perimeta_sw_b_child.yaml
+ description: |
+ HOT template to instantiate an B side Perimeta RTP MSC instance with 4 vNICs as part of a nested template
+ members:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - perimeta_rtp_msc_b_server_0
+ - perimeta_rtp_msc_b_ha_0_port
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ substitution_mappings:
+ node_type: org.openecomp.resource.abstract.nodes.heat.module_2_perimeta_sw_b_child
+ capabilities:
+ attachment_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - attachment
+ disk.read.requests_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.read.requests
+ network.incoming.bytes.rate_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - network.incoming.bytes.rate
+ network.incoming.packets_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - network.incoming.packets
+ attachment_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - attachment
+ disk.device.read.requests.rate_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.read.requests.rate
+ network.outgoing.packets.rate_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - network.outgoing.packets.rate
+ network.incoming.bytes_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - network.incoming.bytes
+ network.incoming.bytes.rate_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - network.incoming.bytes.rate
+ disk.latency_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.latency
+ network.incoming.packets.rate_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - network.incoming.packets.rate
+ disk.device.write.requests_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.write.requests
+ disk.device.read.bytes.rate_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.read.bytes.rate
+ memory_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - memory
+ network.outgoing.bytes.rate_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - network.outgoing.bytes.rate
+ feature_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - feature
+ network.incoming.packets_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - network.incoming.packets
+ disk.ephemeral.size_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.ephemeral.size
+ network.outgoing.bytes.rate_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - network.outgoing.bytes.rate
+ attachment_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - attachment
+ disk.capacity_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.capacity
+ network.incoming.bytes_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - network.incoming.bytes
+ cpu_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - cpu
+ disk.device.capacity_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.capacity
+ binding_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - binding
+ disk.device.usage_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.usage
+ disk.device.allocation_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.allocation
+ disk.write.requests.rate_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.write.requests.rate
+ network.outpoing.packets_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - network.outpoing.packets
+ disk.root.size_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.root.size
+ cpu_util_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - cpu_util
+ disk.device.latency_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.latency
+ attachment_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - attachment
+ os_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - os
+ disk.device.write.bytes.rate_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.write.bytes.rate
+ network.outgoing.bytes_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - network.outgoing.bytes
+ disk.device.read.bytes_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.read.bytes
+ network.outgoing.packets.rate_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - network.outgoing.packets.rate
+ network.incoming.packets_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - network.incoming.packets
+ disk.device.iops_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.iops
+ network.incoming.packets.rate_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - network.incoming.packets.rate
+ network.incoming.packets_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - network.incoming.packets
+ disk.write.bytes_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.write.bytes
+ network.incoming.bytes_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - network.incoming.bytes
+ network.outgoing.bytes.rate_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - network.outgoing.bytes.rate
+ network.outgoing.bytes_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - network.outgoing.bytes
+ instance_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - instance
+ disk.device.write.requests.rate_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.write.requests.rate
+ network.outgoing.packets.rate_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - network.outgoing.packets.rate
+ network.incoming.bytes_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - network.incoming.bytes
+ network.outgoing.bytes_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - network.outgoing.bytes
+ vcpus_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - vcpus
+ memory.resident_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - memory.resident
+ network.outgoing.bytes_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - network.outgoing.bytes
+ feature_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - feature
+ endpoint_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - endpoint
+ network.outpoing.packets_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - network.outpoing.packets
+ disk.write.requests_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.write.requests
+ network.incoming.packets.rate_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - network.incoming.packets.rate
+ disk.read.bytes_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.read.bytes
+ disk.write.bytes.rate_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.write.bytes.rate
+ network.incoming.packets.rate_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - network.incoming.packets.rate
+ memory.usage_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - memory.usage
+ binding_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - binding
+ scalable_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - scalable
+ cpu.delta_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - cpu.delta
+ disk.device.write.bytes_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.write.bytes
+ network.outpoing.packets_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - network.outpoing.packets
+ disk.allocation_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.allocation
+ feature_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - feature
+ disk.usage_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.usage
+ binding_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - binding
+ host_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - host
+ network.outpoing.packets_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - network.outpoing.packets
+ feature_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - feature
+ binding_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - binding
+ network.incoming.bytes.rate_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - network.incoming.bytes.rate
+ network.outgoing.bytes.rate_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - network.outgoing.bytes.rate
+ disk.iops_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.iops
+ disk.device.read.requests_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.device.read.requests
+ network.incoming.bytes.rate_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - network.incoming.bytes.rate
+ feature_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - feature
+ binding_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - binding
+ network.outgoing.packets.rate_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - network.outgoing.packets.rate
+ disk.read.bytes.rate_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - disk.read.bytes.rate
+ requirements:
+ link_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - link
+ dependency_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - dependency
+ link_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - link
+ dependency_perimeta_rtp_msc_b_trusted_0_port:
+ - perimeta_rtp_msc_b_trusted_0_port
+ - dependency
+ dependency_perimeta_rtp_msc_b_ha_0_port:
+ - perimeta_rtp_msc_b_ha_0_port
+ - dependency
+ dependency_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - dependency
+ dependency_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - dependency
+ local_storage_perimeta_rtp_msc_b_server_0:
+ - perimeta_rtp_msc_b_server_0
+ - local_storage
+ link_perimeta_rtp_msc_b_mgmt_0_port:
+ - perimeta_rtp_msc_b_mgmt_0_port
+ - link
+ link_perimeta_rtp_msc_b_untrusted_parent_0_port:
+ - perimeta_rtp_msc_b_untrusted_parent_0_port
+ - link \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/MANIFEST.json
new file mode 100644
index 0000000000..95370a29a8
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/MANIFEST.json
@@ -0,0 +1,86 @@
+{
+ "name": "xbi test TSBC 0905",
+ "description": "test",
+ "version": "0.1",
+ "data": [
+ {
+ "isBase": false,
+ "file": "module_2_perimeta_rtp_msc_b.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "module_2_perimeta_rtp_msc_b.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "isBase": false,
+ "file": "module_2_perimeta_rtp_msc_a.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "module_2_perimeta_rtp_msc_a.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "isBase": false,
+ "file": "module_1_perimeta_ssc_b.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "module_1_perimeta_ssc_b.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "isBase": false,
+ "file": "module_1_perimeta_ssc_a.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "module_1_perimeta_ssc_a.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "isBase": true,
+ "file": "base_perimeta_deployment_create.yaml",
+ "type": "HEAT",
+ "data": [
+ {
+ "file": "base_perimeta_deployment_create.env",
+ "type": "HEAT_ENV"
+ }
+ ]
+ },
+ {
+ "file": "module_2_perimeta_sw_b_child.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "vlan_subinterface_dual.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "module_2_perimeta_sw_a_child.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "module_1_perimeta_swmu_b_child.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "module_1_perimeta_swmu_a_child.yaml",
+ "type": "HEAT"
+ },
+ {
+ "file": "custom.ini",
+ "type": "OTHER"
+ }
+ ]
+} \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/base_perimeta_deployment_create.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/base_perimeta_deployment_create.env
new file mode 100644
index 0000000000..03aa1aed5e
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/base_perimeta_deployment_create.env
@@ -0,0 +1,34 @@
+# Environment file for heat template which instantiates base resources for a
+# Perimeta deployment
+#
+parameters:
+ #
+ # General ECOMP VNF parameters
+ #
+
+ # Unique VNF name
+ #vnf_name: tsbc0002
+
+ #
+ # General deployment parameters.
+ #
+
+ # SSH public key to upload to Perimeta instances for ssh access.
+ perimeta_ssh_key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDXvSadEWp+nsz3gEAAAAAAAAAAbggQ3t06mqFIauHfUYMiKZ3EUX3jDFf/uGQoNsIZU6SNE/gl3tY4fFvO8Yzj8OY/vstHHvEadbY5aXNE6kd39ik20uRNbeZLT+pRllBwVKBSVnFqG3kBDvNWmBIenlPZzu3Ay0LYT/aDq6fZaz8Mqy8hzhpAAAAAAAAAAEmS/ESYY4UMs/aF2fVGmCLqudSjLpSsyD8lXag2dmeiT7cTdwRkgtDNTULXCPVucolVZwZF9BxXPNK++B+fL/ZY4MrXHXgZYGEElrMCFYkQFb3jQv3XQtxZ6gVByrzgGc9eiU7tkCgY2cVfb22iIs9n Generated-by-Nova"
+
+
+ # Max number of RTP MSC pair in the site. This is used to create the correct
+ # number of MSRP specific server groups. These are used by the appropriate
+ # module_2 yaml files to associate the server group with the particular
+ # perimeta RTP VF pair
+ perimeta_max_rtp_msc_count: 8
+
+ #
+ # Shared internal HA network related parameters
+ #
+
+ # IPv4 network prefix for internal HA network
+ perimeta_int_ha_net_prefix_v4: 172.26.1.4
+
+ # IPv4 network prefix length for internal HA network
+ perimeta_int_ha_net_prefix_len_v4: 26
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/base_perimeta_deployment_create.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/base_perimeta_deployment_create.yaml
new file mode 100644
index 0000000000..4b97d04fd7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/base_perimeta_deployment_create.yaml
@@ -0,0 +1,222 @@
+# Heat template which instantiates base resources for a Perimeta deployment,
+# namely.
+# - keypair
+# - security group
+# - SSC server group
+# - RTP MSC server group
+# - Internal HA network
+# - Internal unused network
+# - Internal parent network for the untrusted VLANs
+#
+# Template version 17.07.04 - 2017-09-01
+#
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate base shared resources for a Perimeta deployment
+
+parameters:
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ perimeta_ssh_key:
+ type: string
+ description: SSH public key
+ # Deployment scaling parameters
+ perimeta_max_rtp_msc_count:
+ type: number
+ description: Max number of RTP MSCs in a site.
+ constraints:
+ - range: { min: 0, max: 20 }
+ description: perimeta_max_rtp_msc_count must be between 0 and 20
+ # Internal high availability network parameters
+ perimeta_int_ha_net_prefix_v4:
+ type: string
+ description: IPv4 subnet prefix for internal HA network
+ perimeta_int_ha_net_prefix_len_v4:
+ type: number
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - range: { min: 0, max: 31 }
+ description: int_ha_net_plen must be between 0 and 31
+
+resources:
+ # Resource Security Group
+ shared_perimeta_rsg:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: Security Group for Perimeta networks
+ name:
+ str_replace:
+ template: $VNF_NAME_shared_perimeta_RSG
+ params:
+ $VNF_NAME: { get_param: vnf_name }
+ rules:
+ - {"direction": "egress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 1}
+ - {"direction": "egress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "udp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 1}
+ - {"direction": "egress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "icmp", "ethertype": "IPv4"}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "icmp", "ethertype": "IPv6"}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "tcp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 1}
+ - {"direction": "egress", "remote_ip_prefix": "::/0", "protocol": "udp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 1}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "tcp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 1}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "udp", "ethertype": "IPv4", "port_range_max": 65535, "port_range_min": 1}
+ - {"direction": "ingress", "remote_ip_prefix": "0.0.0.0/0", "protocol": "icmp", "ethertype": "IPv4"}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "icmp", "ethertype": "IPv6"}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "tcp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 1}
+ - {"direction": "ingress", "remote_ip_prefix": "::/0", "protocol": "udp", "ethertype": "IPv6", "port_range_max": 65535, "port_range_min": 1}
+
+ # Keypair for use by Perimeta instances.
+ shared_perimeta_keypair:
+ type: OS::Nova::KeyPair
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_key_pair
+ params:
+ $VNF_NAME: { get_param: vnf_name }
+ public_key: {get_param: perimeta_ssh_key}
+ save_private_key: false
+
+ # Create the server groups. We need one per pair of perimeta VFs in the site
+ # We only have one SSC
+ # We can have multiple RTP MSCs
+
+ shared_perimeta_ssc_server_gp:
+ type: OS::Nova::ServerGroup
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_shared_ssc_RSG_name_0
+ params:
+ $VNF_NAME: { get_param: vnf_name }
+ policies: ['anti-affinity']
+
+
+ shared_perimeta_rtp_msc_server_gps:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: perimeta_max_rtp_msc_count }
+ resource_def:
+ type: OS::Nova::ServerGroup
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_shared_rtp_msc_RSG_name_"%index%"
+ params:
+ $VNF_NAME: { get_param: vnf_name }
+ policies: ['anti-affinity']
+
+ # Internal HA network for deployment.
+ # This is a private network with all instances on the same isolated L2
+ # L2 subnet. There is no requirement for routing in an IP sense which
+ # means that there is no need for a default gateway
+ perimeta_internal_ha_ipam_net_0:
+ type: OS::ContrailV2::NetworkIpam
+ properties:
+ name:
+ str_replace:
+ template: $VF_NAME_int_ha_ipam_net_0
+ params:
+ $VF_NAME: { get_param: vnf_name }
+
+ shared_perimeta_internal_ha_net_0:
+ type: OS::ContrailV2::VirtualNetwork
+ depends_on: [ perimeta_internal_ha_ipam_net_0 ]
+ properties:
+ name:
+ str_replace:
+ template: $VF_NAME_int_ha_net_0
+ params:
+ $VF_NAME: { get_param: vnf_name }
+ virtual_network_properties:
+ virtual_network_properties_rpf: enable
+ is_shared: false
+ flood_unknown_unicast: true
+ network_ipam_refs:
+ - get_resource: perimeta_internal_ha_ipam_net_0
+ network_ipam_refs_data:
+ - network_ipam_refs_data_ipam_subnets:
+ - network_ipam_refs_data_ipam_subnets_subnet:
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix: { get_param: perimeta_int_ha_net_prefix_v4 }
+ network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len: { get_param: perimeta_int_ha_net_prefix_len_v4 }
+ network_ipam_refs_data_ipam_subnets_enable_dhcp: false
+
+ # Internal unused network - required for unused ports on SSC.
+ shared_perimeta_unused_net_0:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: $VF_NAME_int_unused_net
+ params:
+ $VF_NAME: { get_param: vnf_name }
+
+ # A subnet is required for unused network but we just use arbitrary IP addresses
+ # as these will never be used.
+ shared_perimeta_unused_net_0_subnet:
+ type: OS::Neutron::Subnet
+ depends_on: [ shared_perimeta_unused_net_0 ]
+ properties:
+ network: { get_resource: shared_perimeta_unused_net_0 }
+ cidr: "10.0.0.0/29"
+ ip_version: 4
+ enable_dhcp: false
+ gateway_ip: ""
+
+ # Internal parent network - required for untrusted network to anchor the VLANs
+ shared_perimeta_int_untrusted_parent_net_0:
+ type: OS::Neutron::Net
+ properties:
+ name:
+ str_replace:
+ template: $VF_NAME_int_untrusted_parent_net
+ params:
+ $VF_NAME: { get_param: vnf_name }
+
+ # A subnet is required for untrusted parent network but we just use arbitrary IP addresses
+ # as these will never be used to route traffic.
+ shared_perimeta_int_untrusted_parent_net_0_subnet:
+ type: OS::Neutron::Subnet
+ depends_on: [ shared_perimeta_int_untrusted_parent_net_0 ]
+ properties:
+ network: { get_resource: shared_perimeta_int_untrusted_parent_net_0 }
+ cidr: "11.0.0.0/24"
+ ip_version: 4
+ enable_dhcp: false
+ gateway_ip: ""
+
+outputs:
+
+ shared_perimeta_ssc_server_group:
+ description: Perimeta SSC Server group
+ value: { get_resource: shared_perimeta_ssc_server_gp}
+
+
+ shared_perimeta_rtp_msc_server_groups:
+ description: Perimeta RTP MSC Server groups
+ value: { list_join: [ ',' , { get_attr: [shared_perimeta_rtp_msc_server_gps, refs ] } ] }
+
+ shared_perimeta_keypair:
+ description: SSH keypair for deployment
+ value: { get_resource: shared_perimeta_keypair }
+
+ shared_perimeta_sec_groups:
+ description: List of security groups to use for all network interfaces
+ value: { get_resource: shared_perimeta_rsg }
+
+ shared_int_ha_net_id:
+ description: HA internal network for deployment
+ value: { get_resource: shared_perimeta_internal_ha_net_0 }
+
+ shared_int_ha_net_prefix_len_v4:
+ description: HA internal network IPv4 prefix length
+ value: { get_param: perimeta_int_ha_net_prefix_len_v4 }
+
+ shared_ssc_unused_net_id:
+ description: Unused internal network for deployment
+ value: { get_resource: shared_perimeta_unused_net_0 }
+
+ shared_int_untrusted_parent_net_id:
+ description: Internal untrusted parent network for deployment
+ value: { get_resource: shared_perimeta_int_untrusted_parent_net_0 }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/custom.ini b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/custom.ini
new file mode 100644
index 0000000000..1d18c706f9
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/custom.ini
@@ -0,0 +1,21 @@
+;******************************************************************************
+;* Perimeta Custom Initialization File. *
+;* *
+;* ***** IMPORTANT ***** *
+;* *
+;* Background: *
+;* - This file is maintained across Software Upgrade. *
+;* - The format is similar to nbase.ini but it is only for parameters that *
+;* are read by NBB_GET_CUSTOM_INT_INT/STRING(). *
+;* - Comments begin with the character ';' *
+;* *
+;* To make a change to this file: *
+;* - Edit only the copy in /opt/MetaSwitch/init. *
+;* - After editing, run mslu_config_change to backup this file. *
+;* - Repeat the above two bullets on the other controller. *
+;* *
+;******************************************************************************
+; Set max_dlow_pairs to limit the number of flowpairs supported by an MSC or
+; ISC. This actually counts in unidirectional flows, so to limit to say
+; 100 flowpairs, then you would set the limit to 200
+mpf_max_flow_pairs=10000
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_a.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_a.env
new file mode 100644
index 0000000000..9c0153efaa
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_a.env
@@ -0,0 +1,208 @@
+# Environment file for instantiating
+# - 1 x HA SSC pair - A instance
+#
+# During initial instantiation, the Perimeta A instance is configured with
+# minimal configuration, commissioned as an SSC and started. In addition, it
+# will attempt partnering with the B instance when it becomes availble.
+#
+# During healing, the Perimeta A instance is only configured with sufficient
+# configuration to allow partnering from the B instance (which will complete
+# the configuration).
+#
+# This template assumes that a base template stack has previously been
+# created so that deployment wide resources such as server-groups have been
+# defined.
+#
+
+parameters:
+ #
+ # General VNF parameters
+ #
+ # Unique VNF name
+ #vnf_name: tsbc0002
+ # ID of VNF
+ #vnf_id: ibcx0002
+ # Unique ID for this VF Module instance
+ #vf_module_id: ibcx
+ # Availability zone for A instances.
+ #availability_zone_0: DPA3_D2_AZ1
+ #
+ # Shared parameters from base template
+ #
+ # Internal HA network UUID
+ #shared_int_ha_net_id: "c8994bb0-9dbd-43e7-a8f9-658c54e35d23"
+ # Internal HA network IPv4 prefix length
+ #shared_int_ha_net_prefix_len_v4: 26
+ # Keypair UUID
+ #shared_perimeta_keypair: "atttest_key_pair"
+ # List of security groups to use for all interfaces
+ #shared_perimeta_sec_groups: [ "2412dd6a-d784-40a5-a195-7a7da2349178" ]
+ # Anti-affinity server groups to use for SSCs
+ #shared_perimeta_ssc_server_group: "308e8e5b-fac5-4964-b86c-47d8b439fe44"
+ # Unused network parameters
+ #shared_ssc_unused_net_id: "dd410626-5658-445c-8f97-1142e2d521ab"
+
+ #
+ # SSC parameters
+ #
+ # Flavor to use for creating SSC VM instance
+ ssc_flavor_name: gv.c8r16d160
+ # Glance image to use for launching SSC Perimeta instances.
+ ssc_image_name: ISBC_SBC_v4.0.40_SU12.qcow2
+
+
+ # VNFC of the SSC VIP
+ #ssc_vnfcname_0: ibcx0002vm001ssc001pair
+ # VNFCs of the servers
+ #ssc_a_vnfcname_0: ibcx0002vm001ssc001
+ #ssc_b_vnfcname_0: ibcx0002vm002ssc001
+
+ # Name of VM A of SSC
+ #ssc_a_name_0: ibcx0002vm001
+
+ #
+ # HA network parameters
+ #
+ # HA fixed IPv4 address to use for SSC A.
+ #ssc_a_int_ha_ip_0: 172.26.1.4
+ # HA fixed IPv4 address to use for SSC B.
+ #ssc_b_int_ha_ip_0: 172.26.1.5
+
+ #
+ # Management network parameters
+ #
+ # Management network ID
+ #mgmt_net_id: 4b5621b0-4ca4-4ea0-8511-860318c4fc3b
+ # Management network prefix length
+ #mgmt_net_plen: 26
+ # Default gateway for management network
+ #mgmt_net_default_gateway: 135.144.188.131
+ # Management virtual IPv4 address to use for SSC.
+ #ssc_mgmt_vip_0: 135.144.188.133
+ # Management fixed IPv4 address to use for SSC A.
+ #ssc_a_mgmt_ip_0: 135.144.188.132
+ # Management fixed IPv4 address to use for SSC B.
+ #ssc_b_mgmt_ip_0: 135.144.188.136
+
+ #
+ # Trusted/core network parameters
+ #
+ # Network ID of Trusted/core network.
+ #trusted_net_id: 3d584971-4ec6-408c-92fe-3073666fbcb9
+ # Virtual IPv4 address on Trusted/core network for SSC.
+ #ssc_trusted_vip_0: 10.1.1.5
+ # Fixed IPv4 address on Trusted/core network for SSC A.
+ #ssc_a_trusted_ip_0: 10.1.1.4
+
+ #
+ # Untrusted/access network parameters
+ #
+ # Using VLANs on Untrusted/access
+ #shared_int_untrusted_parent_net_id: a0ddd409-f6a7-465a-a091-827a12402252
+ # Virtual IPv4 address on Untrusted/access parent network for SSC.
+ #ssc_untrusted_parent_vip_0: 11.0.0.6
+ # Fixed IPv4 address on Untrusted/access parent network for SSC A.
+ #ssc_a_untrusted_parent_ip_0: 11.0.0.4
+
+ #perimeta_untrusted_num_vlans: 5
+ #perimeta_untrusted_vlan_ids: ["81", "1001", "1002", "1003", "1004"]
+ #perimeta_untrusted_vlan_networks: [95c74fbb-0650-4ac2-bd4f-7b4fb50b4b5d,aa1a5096-61fd-421b-a74b-0b4a72c47856,ced72584-9c09-4d67-9b9f-8faf4c081c45,6311c9db-c4ba-41f5-85e5-4a3cc85d7f55,79391429-9c52-44f5-b9a9-4547fec0e9d4]
+
+
+
+ # Virtual IPv4 address on Untrusted/access network for SSC.
+ #ssc_untrusted_vip_0: 12.121.106.133
+ # Virtual IPv6 address on Untrusted/access network for SSC.
+ #ssc_untrusted_v6_vip_0: 2001:1890:1001:2B38::2D:2
+ # Fixed IPv4 address on Untrusted/access network for SSC A.
+ #ssc_a_untrusted_ip_0: 12.121.106.132
+ # Fixed IPv6 address on Untrusted/access network for SSC A.
+ #ssc_a_untrusted_v6_ip_0: 2001:1890:1001:2B38::2D:1
+
+ #
+ # management/Rf network parameters
+ #
+ # Virtual IPv4 address on management/Rf network for SSC.
+ #ssc_rf_vip_0: 135.144.188.135
+ # Fixed IPv4 address on management/Rf network for SSC A.
+ #ssc_a_rf_ip_0: 135.144.188.134
+
+ #
+ # A side healing / instantiation parameters
+ #
+ #
+ # Healing or instantiation? This is used to ensure that the json file passed
+ # to the VF is correct for the operation being carried out.
+ # This parameter must be set to one of the following values
+ # - single whitespace character
+ # - the string // not required for healing
+ # Simply uncomment the required value from the pair below
+ #
+ # Note that we need to do this because we cannot parmeterize the file name
+ # passed to get_file (which would be the more obvious way to do this)
+ #
+ # Uncomment for instantiation, comment for healing
+ ssc_a_json_prefix: " "
+ # Uncomment for healing, comment for instantiation
+ # ssc_a_json_prefix: "// healing, not required "
+
+ # Orchestrating a perimeta version 41 or above. Used to ensure that the
+ # tags in the json file are supported by the version of perimeta that is
+ # being instantiated.
+ # This parameter must be set to one of the following values
+ # - single whitespace character
+ # - the string // older perimeta, parameter not required
+ # Simply uncomment the required value from the pair below
+ #
+ # Note that we need to do this because we cannot parmeterize the file name
+ # passed to get_file (which would be the more obvious way to do this)
+ #
+ #
+ # Uncomment for V4.1.00 or above, comment for V4.0.40
+ ssc_json_v41: " "
+ # Uncomment for V4.0.40, comment for V4.1.00 or above
+ # ssc_json_v41: "// older perimeta, parameter not required "
+
+ # Using Radius for user account authentication? Used to ensure that the json
+ # file is configured correctly depending on whether we are using Radius or
+ # local authentication
+ #
+ # This parameter must be set to one of the following values
+ # - single whitespace character
+ # - the string // older perimeta, parameter not required
+ # Simply uncomment the required value from the pair below
+ #
+ # Note that we need to do this because we cannot parmeterize the file name
+ # passed to get_file (which would be the more obvious way to do this)
+ #
+ # Uncomment for Local authentication
+ #ssc_json_use_radius_authentication: "// not using Radius "
+ # Uncomment for Radius authentication
+ ## ssc_json_use_radius_authentication: " "
+
+ #
+ # Radius server parameters
+ #
+ #
+ # IP Address or hostname of RADIUS Server.
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #ssc_json_radius_servername: "192.0.0.1"
+ # Radius Server port configuration - value between 0 and 65535
+ # Normal Radius Server port is 1812
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #ssc_json_radius_port: 1812
+ # Radius Server shared secret
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #ssc_json_radius_secret: "TopSecret"
+ # Radius Server connection timeout - value between 1 and 60
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #ssc_json_radius_timeout: 3
+ # Radius Server default user authentication level.
+ # must be set to one of 'no-access', 'read-only', 'support', 'restricted-admin' or 'admin'
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #ssc_json_radius_default: "no-access"
+
+ #
+ # NTP server IPv4 addresses, separated by commas. These must be accessible from the management network
+ #
+ #ntp_server_ip_addrs: 132.201.84.13,155.179.58.11,155.179.59.249,155.179.82.25
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_a.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_a.yaml
new file mode 100644
index 0000000000..ace080e7e7
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_a.yaml
@@ -0,0 +1,322 @@
+# Template for instantiating
+# - 1 x HA SSC pair - A instance
+#
+# During initial instantiation, the Perimeta A instance is configured with
+# minimal configuration, commissioned as an SSC and started. In addition, it
+# will attempt partnering with the B instance when it becomes availble.
+#
+# During healing, the Perimeta A instance is only configured with sufficient
+# configuration to allow partnering from the B instance (which will complete
+# the configuration).
+#
+# This template assumes that a base template stack has previously been
+# created so that deployment wide resources such as server-groups have been
+# defined.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate an A side Perimeta SSC and optionally partner it with the corresponding B side
+
+parameters:
+ # General VNF parameters
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ vnf_id:
+ type: string
+ description: ID of VNF
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ # Availability zones
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ shared_perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ shared_perimeta_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on all interfaces.
+ shared_perimeta_ssc_server_group:
+ type: string
+ description: Server group to use for these VMs
+ # Internal network parameters
+ shared_int_ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+
+ # Constraint below is copied from base module
+ shared_int_ha_net_prefix_len_v4:
+ type: number
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - range: { min: 0, max: 31 }
+ description: shared_int_ha_net_prefix_len_v4 must be between 0 and 31
+ # Unused network parameters
+ #
+ # This is used for connecting the unused 4th SSC service interface.
+ shared_ssc_unused_net_id:
+ type: string
+ description: Unused network ID
+ # Management network parameters
+ mgmt_net_id:
+ type: string
+ description: Management network ID
+ constraints:
+ - custom_constraint: neutron.network
+ mgmt_net_plen:
+ type: number
+ description: Management network prefix length
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: mgmt_net_plen must be between 0 and 32
+ mgmt_net_default_gateway:
+ type: string
+ description: Default gateway for management network
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of Trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ # untrusted parent network parameters
+ shared_int_untrusted_parent_net_id:
+ type: string
+ description: untrusted parent network id
+ # SSC IP addresses on Untrusted/access parent network
+ ssc_untrusted_parent_vip_0:
+ type: string
+ description: Virtual IPv4 address on Untrusted/access parent network for SSC.
+ ssc_a_untrusted_parent_ip_0:
+ type: string
+ description: Fixed IPv4 address on Untrusted/access parent network for SSC A.
+ perimeta_untrusted_num_vlans:
+ type: number
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - range: { min: 1, max: 1001 }
+ description: perimeta_untrusted_num_vlans (number of VLANs to connect to the untrusted/access interface) must be between 1 and 1001
+ perimeta_untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ perimeta_untrusted_vlan_networks:
+ type: comma_delimited_list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ # SSC parameters
+ ssc_flavor_name:
+ type: string
+ description: Flavor to use for creating SSC VM instance
+ constraints:
+ - custom_constraint: nova.flavor
+ ssc_image_name:
+ type: string
+ description: Glance image to use for launching SSC Perimeta instances.
+ constraints:
+ - custom_constraint: glance.image
+ # Hostames of the VIP and servers
+ ssc_vnfcname_0:
+ type: string
+ description: Name of vnfc of SSC. This is the name associated with the perimeta pair and corresponds to the VIP
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: vnfc name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ ssc_a_vnfcname_0:
+ type: string
+ description: vnfc name of VM A of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: vnfc name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ ssc_b_vnfcname_0:
+ type: string
+ description: vnfc name of VM B of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,31}$'
+ description: vnfc name must be 32 characters or less and a valid hostname. Only alphanumeric characters plus hyphen are allowed.
+ # SSC names of the physical A instance
+ ssc_a_name_0:
+ type: string
+ description: Name of VM A of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,29}$'
+ description: VM name must be 30 characters or less. Only alphanumeric characters plus hyphen are allowed.
+ # SSC IP addresses on management network
+ ssc_mgmt_vip_0:
+ type: string
+ description: Management virtual IP address to use for SSC.
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC A.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC B.
+ # SSC IP addresses on internal HA network
+ ssc_a_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC A.
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC B.
+ # SSC IP addresses on Trusted/core network
+ ssc_trusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on Trusted/core network for SSC.
+ ssc_a_trusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on Trusted/core network for SSC A.
+ # SSC IP addresses on Untrusted/access network
+ ssc_untrusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on Untrusted/access network for SSC.
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Virtual IPv6 address on Untrusted/access network for SSC.
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on Untrusted/access network for SSC A.
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on Untrusted/access network for SSC A.
+ #
+ # RF virtual IPv4 address on management/Rf network for SSC.
+ #
+ ssc_rf_vip_0:
+ type: string
+ description: RF virtual IP address to use for SSC.
+
+ ssc_a_rf_ip_0:
+ type: string
+ description: RF fixed IP address to use for SSC A.
+ ntp_server_ip_addrs:
+ type: string
+ description: NTP server IPv4 addresses, separated by commas. These must be accessible from the management network
+ constraints:
+ - allowed_pattern: "((?:\\d{1,3}\\.){3}\\d{1,3},)*((?:\\d{1,3}\\.){3}\\d{1,3})"
+ description: ntp_server_ip_addrs must be a comma separated list of IPv4 addresses (with no spaces)
+ # Healing or instantiating? Used to build the correct json file
+ ssc_a_json_prefix:
+ type: string
+ description: Json prefix, used to create the correct json file depending on the operation being performed
+ constraints:
+ - allowed_values:
+ - " "
+ - "// healing, not required "
+ description: ssc_a_json_prefix must be set to ' ' or '// healing, not required '
+ # Running V4.1 perimeta or greater. Used to ensure that newer json tags are
+ # not included if the server will not recognize them
+ ssc_json_v41:
+ type: string
+ description: Json prefix, used to ensure that the json tags will be recognised by the server loading them
+ constraints:
+ - allowed_values:
+ - " "
+ - "// older perimeta, parameter not required "
+ description: ssc_json_v41 must be set to ' ' or '// older perimeta, parameter not required '
+ # Use Radius for user account authentication.
+ ssc_json_use_radius_authentication:
+ type: string
+ description: Json prefix, used to indicate if user account authentication is done externally through Radius
+ constraints:
+ - allowed_values:
+ - " "
+ - "// not using Radius "
+ description: ssc_json_use_radius_authentication must be set to ' ' or '// not using Radius '
+ # Radius Server address configuration
+ ssc_json_radius_servername:
+ type: string
+ description: IP Address or hostname of RADIUS server
+ # Radius Server port configuration
+ ssc_json_radius_port:
+ type: number
+ description: Port to use to connect to RADIUS server
+ constraints:
+ - range: { min: 0, max: 65535 }
+ description: ssc_json_radius_port must be between 0 and 65535
+ # Radius Server shared secret
+ ssc_json_radius_secret:
+ type: string
+ description: Shared secret to use for the RADIUS Server
+ # Radius Server connection timeout
+ ssc_json_radius_timeout:
+ type: number
+ description: Timeout for connect requests to RADIUS server
+ constraints:
+ - range: { min: 1, max: 60 }
+ description: ssc_json_timeout must be between 1 and 60
+ # Radius Server default user authentication level
+ ssc_json_radius_default:
+ type: string
+ description: Default authentication level for RADIUS users
+ constraints:
+ - allowed_values:
+ - "no-access"
+ - "read-only"
+ - "support"
+ - "restricted-admin"
+ - "admin"
+ description: ssc_json_radius_default must be set to one of 'no-access', 'read-only', 'support', 'restricted-admin' or 'admin'
+
+resources:
+ # Perimeta SSC
+ perimeta_ssc_a:
+ type: module_1_perimeta_swmu_a_child.yaml
+ properties:
+ vnf_name: { get_param: vnf_name }
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'ssc'
+ vf_module_id: { get_param: vf_module_id }
+ ssc_a_name_0: { get_param: ssc_a_name_0 }
+ perimeta_image_name: { get_param: ssc_image_name }
+ perimeta_flavor_name: { get_param: ssc_flavor_name }
+ perimeta_keypair: { get_param: shared_perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ ssc_mgmt_vip_0: { get_param: ssc_mgmt_vip_0 }
+ ssc_a_mgmt_ip_0: { get_param: ssc_a_mgmt_ip_0 }
+ perimeta_sec_groups: { get_param: shared_perimeta_sec_groups }
+ int_ha_net_id: { get_param: shared_int_ha_net_id }
+ int_ha_network_plen: { get_param: shared_int_ha_net_prefix_len_v4 }
+ ssc_a_int_ha_ip_0: { get_param: ssc_a_int_ha_ip_0 }
+ ssc_b_int_ha_ip_0: { get_param: ssc_b_int_ha_ip_0 }
+ trusted_net_id: { get_param: trusted_net_id }
+ ssc_trusted_vip_0: { get_param: ssc_trusted_vip_0 }
+ ssc_a_trusted_ip_0: { get_param: ssc_a_trusted_ip_0 }
+ ssc_untrusted_vip_0: { get_param: ssc_untrusted_vip_0 }
+ ssc_untrusted_v6_vip_0: { get_param: ssc_untrusted_v6_vip_0 }
+ ssc_a_untrusted_ip_0: { get_param: ssc_a_untrusted_ip_0 }
+ ssc_a_untrusted_v6_ip_0: { get_param: ssc_a_untrusted_v6_ip_0 }
+ int_untrusted_parent_net_id: { get_param: shared_int_untrusted_parent_net_id }
+ ssc_untrusted_parent_vip_0: { get_param: ssc_untrusted_parent_vip_0 }
+ ssc_a_untrusted_parent_ip_0: { get_param: ssc_a_untrusted_parent_ip_0 }
+ perimeta_untrusted_num_vlans: { get_param: perimeta_untrusted_num_vlans }
+ perimeta_untrusted_vlan_ids: { get_param: perimeta_untrusted_vlan_ids }
+ perimeta_untrusted_vlan_networks: { get_param: perimeta_untrusted_vlan_networks }
+ perimeta_server_group: { get_param: shared_perimeta_ssc_server_group }
+ ssc_rf_vip_0: { get_param: ssc_rf_vip_0 }
+ ssc_a_rf_ip_0: { get_param: ssc_a_rf_ip_0 }
+ unused_port_net_id: { get_param: shared_ssc_unused_net_id }
+ perimeta_config:
+ str_replace:
+ template: {get_file: ssc_a_template.json}
+ params:
+ $HEALING_OR_INSTANTIATION: { get_param: ssc_a_json_prefix }
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $41ORABOVE: { get_param: ssc_json_v41 }
+ $USERADIUSAUTH: { get_param: ssc_json_use_radius_authentication }
+ $RADIUS_SERVERNAME: { get_param: ssc_json_radius_servername }
+ $RADIUS_PORT: { get_param: ssc_json_radius_port }
+ $RADIUS_SECRET: { get_param: ssc_json_radius_secret }
+ $RADIUS_TIMEOUT: { get_param: ssc_json_radius_timeout }
+ $RADIUS_DEFAULT: { get_param: ssc_json_radius_default }
+ $LOCAL_MGMT_IP_ADDR: { get_param: ssc_a_mgmt_ip_0 }
+ $REMOTE_MGMT_IP_ADDR: { get_param: ssc_b_mgmt_ip_0 }
+ $MGMT_NETWORK_PLEN: { get_param: mgmt_net_plen }
+ $MGMT_NETWORK_DEFAULT_GATEWAY: { get_param: mgmt_net_default_gateway }
+ $VIRT_MGMT_IP_ADDR: { get_param: ssc_mgmt_vip_0 }
+ $VM_NAME_A: { get_param: ssc_a_vnfcname_0 }
+ $VM_NAME_B: { get_param: ssc_b_vnfcname_0 }
+ $SYSTEM_NAME: { get_param: ssc_vnfcname_0 }
+ $COMPLETION_PARAMS: ''
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_b.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_b.env
new file mode 100644
index 0000000000..7806bd1692
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_b.env
@@ -0,0 +1,115 @@
+# Environment file for instantiating
+# - 1 x HA SSC pair - B instance
+#
+# The Perimeta B instance is only configured with sufficient
+# configuration to allow partnering from the A instance (which will complete
+# the configuration).
+#
+# This template assumes that a base template stack has previously been
+# created so that deployment wide resources such as server-groups have been
+# defined.
+#
+
+parameters:
+ #
+ # General VNF parameters
+ #
+ # Unique VNF name
+ #vnf_name: tsbc0002
+ # ID of VNF
+ #vnf_id: ibcx0002
+ # Unique ID for this VF Module instance
+ #vf_module_id: ibcx
+ # Availability zone for B instances.
+ #availability_zone_1: DPA3_D2_AZ2
+
+ #
+ # Shared parameters from base template
+ #
+ # Internal HA network UUID
+ #shared_int_ha_net_id: "c8994bb0-9dbd-43e7-a8f9-658c54e35d23"
+ # Internal HA network IPv4 prefix length
+ #shared_int_ha_net_prefix_len_v4: 26
+ # Keypair UUID
+ #shared_perimeta_keypair: "atttest_key_pair"
+ # List of security groups to use for all interfaces
+ #shared_perimeta_sec_groups: [ "2412dd6a-d784-40a5-a195-7a7da2349178" ]
+ # Anti-affinity server groups to use for SSCs
+ #shared_perimeta_ssc_server_group: "308e8e5b-fac5-4964-b86c-47d8b439fe44"
+ # Unused network parameters
+ #shared_ssc_unused_net_id: "dd410626-5658-445c-8f97-1142e2d521ab"
+
+ #
+ # SSC parameters
+ #
+ # Flavor to use for creating SSC VM instance
+ ssc_flavor_name: gv.c8r16d160
+ # Glance image to use for launching SSC Perimeta instances.
+ ssc_image_name: ISBC_SBC_v4.0.40_SU12.qcow2
+
+
+
+ # Name of VM B of SSC
+ #ssc_b_name_0: ibcx0002vm002
+
+ #
+ # HA network parameters
+ #
+ # HA fixed IPv4 address to use for SSC B.
+ #ssc_b_int_ha_ip_0: 172.26.1.5
+ # HA fixed IPv4 address to use for SSC A.
+ #ssc_a_int_ha_ip_0: 172.26.1.4
+
+ #
+ # Management network parameters
+ #
+ # Management network ID
+ #mgmt_net_id: 4b5621b0-4ca4-4ea0-8511-860318c4fc3b
+ # Management virtual IPv4 address to use for SSC.
+ #ssc_mgmt_vip_0: 135.144.188.133
+ # Management fixed IPv4 address to use for SSC B.
+ #ssc_b_mgmt_ip_0: 135.144.188.136
+
+ #
+ # Trusted/core network parameters
+ #
+ # Network ID of Trusted/core network.
+ #trusted_net_id: 3d584971-4ec6-408c-92fe-3073666fbcb9
+ # Virtual IPv4 address on Trusted/core network for SSC.
+ #ssc_trusted_vip_0: 10.1.1.5
+ # Fixed IPv4 address on Trusted/core network for SSC B.
+ #ssc_b_trusted_ip_0: 10.1.1.6
+
+ #
+ # Untrusted/access network parameters
+ #
+ # Using VLANs on Untrusted/access
+ #shared_int_untrusted_parent_net_id: a0ddd409-f6a7-465a-a091-827a12402252
+ # Virtual IPv4 address on Untrusted/access parent network for SSC.
+ #ssc_untrusted_parent_vip_0: 11.0.0.6
+ # Fixed IPv4 address on Untrusted/access parent network for SSC B.
+ #ssc_b_untrusted_parent_ip_0: 11.0.0.5
+
+ #perimeta_untrusted_num_vlans: 5
+ #perimeta_untrusted_vlan_ids: ["81", "1001", "1002", "1003", "1004"]
+ #perimeta_untrusted_vlan_networks: [95c74fbb-0650-4ac2-bd4f-7b4fb50b4b5d,aa1a5096-61fd-421b-a74b-0b4a72c47856,ced72584-9c09-4d67-9b9f-8faf4c081c45,6311c9db-c4ba-41f5-85e5-4a3cc85d7f55,79391429-9c52-44f5-b9a9-4547fec0e9d4]
+
+
+
+ # Virtual IPv4 address on Untrusted/access network for SSC.
+ #ssc_untrusted_vip_0: 12.121.106.133
+ # Virtual IPv6 address on Untrusted/access network for SSC.
+ #ssc_untrusted_v6_vip_0: 2001:1890:1001:2B38::2D:2
+ # Fixed IPv4 address on Untrusted/access network for SSC B.
+ #ssc_b_untrusted_ip_0: 12.121.106.134
+ # Fixed IPv6 address on Untrusted/access network for SSC B.
+ #ssc_b_untrusted_v6_ip_0: 2001:1890:1001:2B38::2D:3
+
+ #
+ # management/Rf network parameters
+ #
+ # Virtual IPv4 address on management/Rf network for SSC.
+ #ssc_rf_vip_0: 135.144.188.135
+ # Fixed IPv4 address on management/Rf network for SSC B.
+ #ssc_b_rf_ip_0: 135.144.188.136
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_b.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_b.yaml
new file mode 100644
index 0000000000..ba2407e533
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_ssc_b.yaml
@@ -0,0 +1,197 @@
+# Template for instantiating
+# - 1 x HA SSC pair - B instance
+#
+# The Perimeta B instance is only configured with sufficient
+# configuration to allow partnering from the A instance (which will complete
+# the configuration).
+#
+# This template assumes that a base template stack has previously been
+# created so that deployment wide resources such as server-groups have been
+# defined.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate an B side Perimeta SSC
+
+parameters:
+ # General VNF parameters
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ vnf_id:
+ type: string
+ description: ID of VNF
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ # Availability zones
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances.
+ shared_perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ shared_perimeta_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on all interfaces.
+ shared_perimeta_ssc_server_group:
+ type: string
+ description: Server group to use for these VMs
+ # Internal network parameters
+ shared_int_ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+
+ # Constraint below is copied from base module
+ shared_int_ha_net_prefix_len_v4:
+ type: number
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - range: { min: 0, max: 31 }
+ description: shared_int_ha_net_prefix_len_v4 must be between 0 and 31
+ # Unused network parameters
+ #
+ # This is used for connecting the unused 4th SSC service interface.
+ shared_ssc_unused_net_id:
+ type: string
+ description: Unused network ID
+ # Management network parameters
+ mgmt_net_id:
+ type: string
+ description: Management network ID
+ constraints:
+ - custom_constraint: neutron.network
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of Trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ # untrusted parent network parameters
+ shared_int_untrusted_parent_net_id:
+ type: string
+ description: untrusted parent network id
+ # SSC IP addresses on Untrusted/access parent network
+ ssc_untrusted_parent_vip_0:
+ type: string
+ description: Virtual IPv4 address on Untrusted/access parent network for SSC.
+ ssc_b_untrusted_parent_ip_0:
+ type: string
+ description: Fixed IPv4 address on Untrusted/access parent network for SSC B.
+ perimeta_untrusted_num_vlans:
+ type: number
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - range: { min: 1, max: 1001 }
+ description: perimeta_untrusted_num_vlans (number of VLANs to connect to the untrusted/access interface) must be between 1 and 1001
+ perimeta_untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ perimeta_untrusted_vlan_networks:
+ type: comma_delimited_list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ # SSC parameters
+ ssc_flavor_name:
+ type: string
+ description: Flavor to use for creating SSC VM instance
+ constraints:
+ - custom_constraint: nova.flavor
+ ssc_image_name:
+ type: string
+ description: Glance image to use for launching SSC Perimeta instances.
+ constraints:
+ - custom_constraint: glance.image
+ # SSC names of the physical B instance
+ ssc_b_name_0:
+ type: string
+ description: Name of VM B of SSC
+ constraints:
+ - allowed_pattern: '[a-zA-Z0-9][a-zA-Z0-9-]{0,29}$'
+ description: VM name must be 30 characters or less. Only alphanumeric characters plus hyphen are allowed.
+ # SSC IP addresses on management network
+ ssc_mgmt_vip_0:
+ type: string
+ description: Management virtual IP address to use for SSC.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Management fixed IP address to use for SSC B.
+ # SSC IP addresses on internal HA network
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC B.
+ ssc_a_int_ha_ip_0:
+ type: string
+ description: HA fixed IP address to use for SSC A.
+ # SSC IP addresses on Trusted/core network
+ ssc_trusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on Trusted/core network for SSC.
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on Trusted/core network for SSC B.
+ # SSC IP addresses on Untrusted/access network
+ ssc_untrusted_vip_0:
+ type: string
+ description: Virtual IPv4 address on Untrusted/access network for SSC.
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Virtual IPv6 address on Untrusted/access network for SSC.
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IPv4 address on Untrusted/access network for SSC B.
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IPv6 address on Untrusted/access network for SSC B.
+ #
+ # RF virtual IPv4 address on management/Rf network for SSC.
+ #
+ ssc_rf_vip_0:
+ type: string
+ description: RF virtual IP address to use for SSC.
+
+ ssc_b_rf_ip_0:
+ type: string
+ description: RF fixed IP address to use for SSC B.
+
+resources:
+ # Perimeta SSC
+ perimeta_ssc_b:
+ type: module_1_perimeta_swmu_b_child.yaml
+ properties:
+ vnf_name: { get_param: vnf_name }
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'ssc'
+ vf_module_id: { get_param: vf_module_id }
+ ssc_b_name_0: { get_param: ssc_b_name_0 }
+ perimeta_image_name: { get_param: ssc_image_name }
+ perimeta_flavor_name: { get_param: ssc_flavor_name }
+ perimeta_keypair: { get_param: shared_perimeta_keypair }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ ssc_mgmt_vip_0: { get_param: ssc_mgmt_vip_0 }
+ ssc_b_mgmt_ip_0: { get_param: ssc_b_mgmt_ip_0 }
+ perimeta_sec_groups: { get_param: shared_perimeta_sec_groups }
+ int_ha_net_id: { get_param: shared_int_ha_net_id }
+ int_ha_network_plen: { get_param: shared_int_ha_net_prefix_len_v4 }
+ ssc_b_int_ha_ip_0: { get_param: ssc_b_int_ha_ip_0 }
+ ssc_a_int_ha_ip_0: { get_param: ssc_a_int_ha_ip_0 }
+ trusted_net_id: { get_param: trusted_net_id }
+ ssc_trusted_vip_0: { get_param: ssc_trusted_vip_0 }
+ ssc_b_trusted_ip_0: { get_param: ssc_b_trusted_ip_0 }
+ ssc_untrusted_vip_0: { get_param: ssc_untrusted_vip_0 }
+ ssc_untrusted_v6_vip_0: { get_param: ssc_untrusted_v6_vip_0 }
+ ssc_b_untrusted_ip_0: { get_param: ssc_b_untrusted_ip_0 }
+ ssc_b_untrusted_v6_ip_0: { get_param: ssc_b_untrusted_v6_ip_0 }
+ int_untrusted_parent_net_id: { get_param: shared_int_untrusted_parent_net_id }
+ ssc_untrusted_parent_vip_0: { get_param: ssc_untrusted_parent_vip_0 }
+ ssc_b_untrusted_parent_ip_0: { get_param: ssc_b_untrusted_parent_ip_0 }
+ perimeta_untrusted_num_vlans: { get_param: perimeta_untrusted_num_vlans }
+ perimeta_untrusted_vlan_ids: { get_param: perimeta_untrusted_vlan_ids }
+ perimeta_untrusted_vlan_networks: { get_param: perimeta_untrusted_vlan_networks }
+ perimeta_server_group: { get_param: shared_perimeta_ssc_server_group }
+ ssc_rf_vip_0: { get_param: ssc_rf_vip_0 }
+ ssc_b_rf_ip_0: { get_param: ssc_b_rf_ip_0 }
+ unused_port_net_id: { get_param: shared_ssc_unused_net_id }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_swmu_a_child.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_swmu_a_child.yaml
new file mode 100644
index 0000000000..8be774c1d3
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_swmu_a_child.yaml
@@ -0,0 +1,313 @@
+# Heat template which intstantiates an A side Perimeta SSC instance with
+# 6 vNICs.
+#
+# This is designed to be included in a higher level template.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# Host anti-affinity is achieved using different availability zones for
+# the Perimeta instance or server group anti-affinity if they are in the
+# same availability zone.
+#
+# Template requires Juno or above and has been tested on Kilo.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate an A side Perimeta SSC instance with 6 vNICs as part of a nested template
+
+parameters:
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ vnf_id:
+ type: string
+ description: VNF ID of this deployment
+ vm_role:
+ type: string
+ description: Role of these VMs
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ ssc_a_name_0:
+ type: string
+ description: Name of Perimeta VM A instance
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ availability_zone_0:
+ # Can be commented out along with references if always using a single availability zone
+ type: string
+ description: Availability zone for A instances.
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ ssc_mgmt_vip_0:
+ type: string
+ description: Management virtual IP address.
+ ssc_a_mgmt_ip_0:
+ type: string
+ description: Fixed IP address to use as management IP of A instance.
+ int_ha_net_id:
+ type: string
+ description: HA network id
+ int_ha_network_plen:
+ # Constraint copied from base module
+ type: number
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - range: { min: 0, max: 31 }
+ description: int_ha_network_plen must be between 0 and 31
+ ssc_a_int_ha_ip_0:
+ type: string
+ description: Fixed IP address to use as HA IP of A instance.
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: Fixed IP address to use as HA IPs of B instance.
+ trusted_net_id:
+ type: string
+ description: Trusted/core network UUID
+ ssc_trusted_vip_0:
+ type: string
+ description: Trusted/core virtual IP address.
+ ssc_a_trusted_ip_0:
+ type: string
+ description: Fixed IP address to use as Trusted/core fixed IPs of A instance.
+ perimeta_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ ssc_untrusted_vip_0:
+ type: string
+ description: Untrusted/access virtual IP address
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Untrusted/access alternate virtual IP address
+ ssc_a_untrusted_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of A instance.
+ ssc_a_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access alternate fixed IP of A instance.
+ int_untrusted_parent_net_id:
+ type: string
+ description: internal Untrusted/access parent network id
+ ssc_untrusted_parent_vip_0:
+ type: string
+ description: Untrusted/access parent virtual IP address
+ ssc_a_untrusted_parent_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of A parent instance.
+ perimeta_untrusted_num_vlans:
+ # constraint copied from parent module
+ type: number
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - range: { min: 1, max: 1001 }
+ description: perimeta_untrusted_num_vlans (number of VLANs to connect to the untrusted/access interface) must be between 1 and 1001
+ perimeta_untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ perimeta_untrusted_vlan_networks:
+ type: comma_delimited_list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ unused_port_net_id:
+ type: string
+ description: Service network unused port network UUID
+ ssc_rf_vip_0:
+ type: string
+ description: RF virtual IP address to use for SSC.
+ ssc_a_rf_ip_0:
+ type: string
+ description: RF fixed IP address to use for SSC A.
+ perimeta_server_group:
+ type: string
+ description: Server group to use for these VMs
+ perimeta_config:
+ type: string
+ description: JSON orchestration template configuration for instance.
+
+resources:
+ # Perimeta management ports
+ perimeta_ssc_a_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_0_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_a_name_0 }
+ network: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_a_mgmt_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: ssc_mgmt_vip_0 }
+
+ # Perimeta HA ports
+ perimeta_ssc_a_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_ha_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_a_name_0 }
+ network: { get_param: int_ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_a_int_ha_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+
+ # Perimeta Trusted/core service network ports
+ #
+ # Dual stack core network
+ # - if only IPv4 required comment out second entry in fixed_ips and allowed_addess_pairs parameters.
+ # - if only IPv6 required comment out first entry in fixed_ips and allowed_addess_pairs parameters.
+ perimeta_ssc_a_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_trusted_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_a_name_0 }
+ network: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_a_trusted_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: ssc_trusted_vip_0 }
+
+ # Perimeta Untrusted/access service network ports
+ # VLAN being used on this service interface.
+ # The parent network port is used to anchor the VLANs and is not used to
+ # route actual traffic for the service interface. This means that we can
+ # create a dummy network in the base module and use that instead of the
+ # real untrusted network
+
+ perimeta_ssc_a_untrusted_parent_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_parent_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_a_name_0 }
+ network: { get_param: int_untrusted_parent_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_a_untrusted_parent_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: ssc_untrusted_parent_vip_0 }
+
+
+ # Contrail VLAN subinterfaces
+ perimeta_ssc_a_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: perimeta_untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ perimeta_subinterface_instance_index: "%index%"
+ perimeta_subinterface_name_prefix:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_port_vlan
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_a_name_0 }
+ perimeta_parent_interface: { get_resource: perimeta_ssc_a_untrusted_parent_0_port }
+ perimeta_mac_address: { get_attr: [ perimeta_ssc_a_untrusted_parent_0_port, mac_address ] }
+ perimeta_ip_0: { get_param: ssc_a_untrusted_ip_0 }
+ perimeta_v6_ip_0: { get_param: ssc_a_untrusted_v6_ip_0 }
+ perimeta_vip_0: { get_param: ssc_untrusted_vip_0 }
+ perimeta_v6_vip_0: { get_param: ssc_untrusted_v6_vip_0 }
+ perimeta_vlan_ids: { get_param: perimeta_untrusted_vlan_ids }
+ perimeta_vlan_networks: { get_param: perimeta_untrusted_vlan_networks }
+
+ # Perimeta Rf service network ports
+ #
+ # This uses the management network and is IPv4 only
+ perimeta_ssc_a_mgmt_1_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_1_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_a_name_0 }
+ network: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_a_rf_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: ssc_rf_vip_0 }
+
+ # need the unused port to balance out the NICs
+ perimeta_ssc_a_unused_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_unused_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_a_name_0 }
+ network: { get_param: unused_port_net_id }
+
+ # Add any additional service ports here.
+
+ perimeta_ssc_a_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: ssc_a_name_0 }
+ image: { get_param: perimeta_image_name }
+ flavor: { get_param: perimeta_flavor_name }
+ key_name: { get_param: perimeta_keypair }
+ scheduler_hints: { group: { get_param: perimeta_server_group } }
+ metadata:
+ 'vnf_name': { get_param: vnf_name }
+ 'vnf_id': { get_param: vnf_id }
+ 'vm_role':
+ str_replace:
+ template: $ROLE_a
+ params:
+ $ROLE: { get_param: vm_role }
+ 'vf_module_id': { get_param: vf_module_id }
+ 'msw_template_version': '17.07.04 - 2017-09-01'
+ personality:
+ '/opt/MetaSwitch/init/custom.ini': { get_file: custom.ini }
+ networks:
+ - port: { get_resource: perimeta_ssc_a_mgmt_0_port }
+ - port: { get_resource: perimeta_ssc_a_ha_0_port }
+ - port: { get_resource: perimeta_ssc_a_trusted_0_port }
+ - port: { get_resource: perimeta_ssc_a_untrusted_parent_0_port }
+ - port: { get_resource: perimeta_ssc_a_mgmt_1_port }
+ - port: { get_resource: perimeta_ssc_a_unused_0_port }
+ availability_zone: { get_param: availability_zone_0 }
+ config_drive: True
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ template: { get_param: perimeta_config }
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_ssc_a_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_ssc_a_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_ssc_a_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_ssc_a_untrusted_parent_0_port, mac_address] }
+ $SERV3_MACADDR: { get_attr: [perimeta_ssc_a_mgmt_1_port, mac_address] }
+ $SERV4_MACADDR: { get_attr: [perimeta_ssc_a_unused_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: ssc_a_int_ha_ip_0 }
+ $REMOTE_HA_IP_ADDR: { get_param: ssc_b_int_ha_ip_0 }
+ $HA_NETWORK_PLEN: { get_param: int_ha_network_plen } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_swmu_b_child.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_swmu_b_child.yaml
new file mode 100644
index 0000000000..a0ac2fe178
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_1_perimeta_swmu_b_child.yaml
@@ -0,0 +1,321 @@
+# Heat template which intstantiates an B side Perimeta SSC instance with
+# 6 vNICs.
+#
+# This is designed to be included in a higher level template.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# Host anti-affinity is achieved using different availability zones for
+# the Perimeta instance or server group anti-affinity if they are in the
+# same availability zone.
+#
+# Template requires Juno or above and has been tested on Kilo.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate an B side Perimeta SSC instance with 6 vNICs as part of a nested template
+
+parameters:
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ vnf_id:
+ type: string
+ description: VNF ID of this deployment
+ vm_role:
+ type: string
+ description: Role of these VMs
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ ssc_b_name_0:
+ type: string
+ description: Name of Perimeta VM B instance
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ availability_zone_1:
+ # Can be commented out along with references if always using a single availability zone
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ ssc_mgmt_vip_0:
+ type: string
+ description: Management virtual IP address.
+ ssc_b_mgmt_ip_0:
+ type: string
+ description: Fixed IP address to use as management IP of B instance.
+ int_ha_net_id:
+ type: string
+ description: HA network id
+ int_ha_network_plen:
+ # Constraint copied from base module
+ type: number
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - range: { min: 0, max: 31 }
+ description: int_ha_network_plen must be between 0 and 31
+ ssc_b_int_ha_ip_0:
+ type: string
+ description: Fixed IP address to use as HA IP of B instance.
+ ssc_a_int_ha_ip_0:
+ type: string
+ description: Fixed IP address to use as HA IPs of A instance.
+ trusted_net_id:
+ type: string
+ description: Trusted/core network UUID
+ ssc_trusted_vip_0:
+ type: string
+ description: Trusted/core virtual IP address.
+ ssc_b_trusted_ip_0:
+ type: string
+ description: Fixed IP address to use as Trusted/core fixed IPs of B instance.
+ perimeta_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ ssc_untrusted_vip_0:
+ type: string
+ description: Untrusted/access virtual IP address
+ ssc_untrusted_v6_vip_0:
+ type: string
+ description: Untrusted/access alternate virtual IP address
+ ssc_b_untrusted_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of B instance.
+ ssc_b_untrusted_v6_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access alternate fixed IP of B instance.
+ int_untrusted_parent_net_id:
+ type: string
+ description: internal Untrusted/access parent network id
+ ssc_untrusted_parent_vip_0:
+ type: string
+ description: Untrusted/access parent virtual IP address
+ ssc_b_untrusted_parent_ip_0:
+ type: string
+ description: Fixed IP address to use as Untrusted/access fixed IP of B parent instance.
+ perimeta_untrusted_num_vlans:
+ # constraint copied from parent module
+ type: number
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - range: { min: 1, max: 1001 }
+ description: perimeta_untrusted_num_vlans (number of VLANs to connect to the untrusted/access interface) must be between 1 and 1001
+ perimeta_untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ perimeta_untrusted_vlan_networks:
+ type: comma_delimited_list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ unused_port_net_id:
+ type: string
+ description: Service network unused port network UUID
+ ssc_rf_vip_0:
+ type: string
+ description: RF virtual IP address to use for SSC.
+ ssc_b_rf_ip_0:
+ type: string
+ description: RF fixed IP address to use for SSC B.
+ perimeta_server_group:
+ type: string
+ description: Server group to use for these VMs
+
+resources:
+ # Perimeta management ports
+ perimeta_ssc_b_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_0_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_b_name_0 }
+ network: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_b_mgmt_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: ssc_mgmt_vip_0 }
+
+ # Perimeta HA ports
+ perimeta_ssc_b_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_ha_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_b_name_0 }
+ network: { get_param: int_ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_b_int_ha_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+
+ # Perimeta Trusted/core service network ports
+ #
+ # Dual stack core network
+ # - if only IPv4 required comment out second entry in fixed_ips and allowed_addess_pairs parameters.
+ # - if only IPv6 required comment out first entry in fixed_ips and allowed_addess_pairs parameters.
+ perimeta_ssc_b_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_trusted_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_b_name_0 }
+ network: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_b_trusted_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: ssc_trusted_vip_0 }
+
+ # Perimeta Untrusted/access service network ports
+ # VLAN being used on this service interface.
+ # The parent network port is used to anchor the VLANs and is not used to
+ # route actual traffic for the service interface. This means that we can
+ # create a dummy network in the base module and use that instead of the
+ # real untrusted network
+
+ perimeta_ssc_b_untrusted_parent_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_parent_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_b_name_0 }
+ network: { get_param: int_untrusted_parent_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_b_untrusted_parent_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: ssc_untrusted_parent_vip_0 }
+
+
+ # Contrail VLAN subinterfaces
+ perimeta_ssc_b_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: perimeta_untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ perimeta_subinterface_instance_index: "%index%"
+ perimeta_subinterface_name_prefix:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_port_vlan
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_b_name_0 }
+ perimeta_parent_interface: { get_resource: perimeta_ssc_b_untrusted_parent_0_port }
+ perimeta_mac_address: { get_attr: [ perimeta_ssc_b_untrusted_parent_0_port, mac_address ] }
+ perimeta_ip_0: { get_param: ssc_b_untrusted_ip_0 }
+ perimeta_v6_ip_0: { get_param: ssc_b_untrusted_v6_ip_0 }
+ perimeta_vip_0: { get_param: ssc_untrusted_vip_0 }
+ perimeta_v6_vip_0: { get_param: ssc_untrusted_v6_vip_0 }
+ perimeta_vlan_ids: { get_param: perimeta_untrusted_vlan_ids }
+ perimeta_vlan_networks: { get_param: perimeta_untrusted_vlan_networks }
+
+ # Perimeta Rf service network ports
+ #
+ # This uses the management network and is IPv4 only
+ perimeta_ssc_b_mgmt_1_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_1_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_b_name_0 }
+ network: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: ssc_b_rf_ip_0 }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: ssc_rf_vip_0 }
+
+ # need the unused port to balance out the NICs
+ perimeta_ssc_b_unused_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_unused_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: ssc_b_name_0 }
+ network: { get_param: unused_port_net_id }
+
+ # Add any additional service ports here.
+
+ perimeta_ssc_b_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: ssc_b_name_0 }
+ image: { get_param: perimeta_image_name }
+ flavor: { get_param: perimeta_flavor_name }
+ key_name: { get_param: perimeta_keypair }
+ scheduler_hints: { group: { get_param: perimeta_server_group } }
+ metadata:
+ 'vnf_name': { get_param: vnf_name }
+ 'vnf_id': { get_param: vnf_id }
+ 'vm_role':
+ str_replace:
+ template: $ROLE_b
+ params:
+ $ROLE: { get_param: vm_role }
+ 'vf_module_id': { get_param: vf_module_id }
+ 'msw_template_version': '17.07.04 - 2017-09-01'
+ networks:
+ - port: { get_resource: perimeta_ssc_b_mgmt_0_port }
+ - port: { get_resource: perimeta_ssc_b_ha_0_port }
+ - port: { get_resource: perimeta_ssc_b_trusted_0_port }
+ - port: { get_resource: perimeta_ssc_b_untrusted_parent_0_port }
+ - port: { get_resource: perimeta_ssc_b_mgmt_1_port }
+ - port: { get_resource: perimeta_ssc_b_unused_0_port }
+ availability_zone: { get_param: availability_zone_1 }
+ config_drive: True
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ template: |
+ {
+ "vnic_assignment": {
+ "IBG1mgmt": {"mac": "$MGMT_MACADDR"},
+ "IPG1": {"mac": "$HA_MACADDR"},
+ "RPG1": {"mac": "$TRUSTED_MACADDR"},
+ "RPG2": {"mac": "$UNTRUSTED_MACADDR"},
+ "RPG3": {"mac": "$SERV3_MACADDR"},
+ "RPG4": {"mac": "$SERV4_MACADDR"}
+ },
+ "ip_ha_local": "$LOCAL_HA_IP_ADDR",
+ "ip_ha_remote": "$REMOTE_HA_IP_ADDR",
+ "ip_ha_plen": "$HA_NETWORK_PLEN"
+ }
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_ssc_b_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_ssc_b_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_ssc_b_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_ssc_b_untrusted_parent_0_port, mac_address] }
+ $SERV3_MACADDR: { get_attr: [perimeta_ssc_b_mgmt_1_port, mac_address] }
+ $SERV4_MACADDR: { get_attr: [perimeta_ssc_b_unused_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: ssc_b_int_ha_ip_0 }
+ $REMOTE_HA_IP_ADDR: { get_param: ssc_a_int_ha_ip_0 }
+ $HA_NETWORK_PLEN: { get_param: int_ha_network_plen } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_a.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_a.env
new file mode 100644
index 0000000000..015a95f262
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_a.env
@@ -0,0 +1,206 @@
+# Environment file for instantiating
+# - 1 x HA RTP MSC pair - A instance
+#
+# During initial instantiation, the Perimeta A instance is configured with
+# minimal configuration, commissioned as an RTP MSC and started. In addition, it
+# will attempt partnering with the B instance when it becomes availble.
+#
+# During healing, the Perimeta A instance is only configured with sufficient
+# configuration to allow partnering from the B instance (which will complete
+# the configuration).
+#
+# This template assumes that a base template stack has previously been
+# created so that deployment wide resources such as server-groups have been
+# defined.
+#
+# A perimeta deployment can support one or more RTP MSCs. The parameter
+# rtp_msc_a_index is used to make sure that the appropriate settings for this
+# RTP MSC are extracted from the various address and server group arrays.
+#
+
+parameters:
+ #
+ # General VNF parameters
+ #
+ # Unique VNF name
+ #vnf_name: tsbc0002
+ # ID of VNF
+ #vnf_id: ibcx0002
+ # Unique ID for this VF Module instance
+ #vf_module_id: ibcx
+ # Availability zone for A instances.
+ #availability_zone_0: DPA3_D2_AZ1
+ #
+ # Shared parameters from base template
+ #
+ # Internal HA network UUID
+ #shared_int_ha_net_id: "c8994bb0-9dbd-43e7-a8f9-658c54e35d23"
+ # Internal HA network IPv4 prefix length
+ #shared_int_ha_net_prefix_len_v4: 26
+ # Keypair UUID
+ #shared_perimeta_keypair: "atttest_key_pair"
+ # List of security groups to use for all interfaces
+ #shared_perimeta_sec_groups: [ "2412dd6a-d784-40a5-a195-7a7da2349178" ]
+ # Anti-affinity server groups to use for RTP MSCs
+ #shared_perimeta_rtp_msc_server_groups: ["be4b3fa9-112d-454e-952f-146e45202130","bcdd96eb-b3fc-42ee-9ae8-e13ad0a4f0b8","b293e29f-c101-4b4e-80d6-7a1b4173e4e2","fd791679-6b71-4c3a-b8b7-1d586559976e","98171a69-8956-4ce6-b303-1a15444ee47b","a35ba80b-c0c2-4c29-a9ae-4df26d33323f","2192327a-6a31-43b6-84c4-49abc597b4e6","b2843fa5-9f25-49b0-9dc6-5c1c0472e8d4"]
+
+ #
+ # RTP MSC parameters
+ #
+ # Index of RTP MSC to instantiate / heal. This is used as the index into the
+ # various address and service group arrays to get the information associated
+ # with that specific instance
+ #rtp_msc_a_index: 0
+ # Flavor to use for creating RTP MSC VM instance
+ rtp_msc_flavor_name: gv.c8r16d160
+ # Glance image to use for launching RTP MSC Perimeta instances.
+ rtp_msc_image_name: ISBC_SBC_v4.0.40_SU12.qcow2
+
+
+ # VNFC of the RTP MSC VIP
+ #rtp_msc_vnfcnames: ["ibcx0002vm003msc001pair","ibcx0002vm005msc001pair","ibcx0002vm007msc001pair","ibcx0002vm009msc001pair","ibcx0002vm011msc001pair","ibcx0002vm013msc001pair","ibcx0002vm015msc001pair","ibcx0002vm017msc001pair"]
+ # VNFCs of the servers
+ #rtp_msc_a_vnfcnames: ["ibcx0002vm003msc001","ibcx0002vm005msc001","ibcx0002vm007msc001","ibcx0002vm009msc001","ibcx0002vm011msc001","ibcx0002vm013msc001","ibcx0002vm015msc001","ibcx0002vm017msc001"]
+ #rtp_msc_b_vnfcnames: ["ibcx0002vm004msc001","ibcx0002vm006msc001","ibcx0002vm008msc001","ibcx0002vm010msc001","ibcx0002vm012msc001","ibcx0002vm014msc001","ibcx0002vm016msc001","ibcx0002vm018msc001"]
+
+ # Name of VM A of RTP MSC
+ #rtp_msc_a_names: ["ibcx0002vm003","ibcx0002vm005","ibcx0002vm007","ibcx0002vm009","ibcx0002vm011","ibcx0002vm013","ibcx0002vm015","ibcx0002vm017"]
+
+ #
+ # HA network parameters
+ #
+ # HA fixed IPv4 address to use for RTP MSC A.
+ #rtp_msc_a_int_ha_ips: ["172.26.1.6","172.26.1.8","172.26.1.10","172.26.1.12","172.26.1.14","172.26.1.16","172.26.1.18","172.26.1.20"]
+ # HA fixed IPv4 address to use for RTP MSC B.
+ #rtp_msc_b_int_ha_ips: ["172.26.1.7","172.26.1.9","172.26.1.11","172.26.1.13","172.26.1.15","172.26.1.17","172.26.1.19","172.26.1.21"]
+
+ #
+ # Management network parameters
+ #
+ # Management network ID
+ #mgmt_net_id: 4b5621b0-4ca4-4ea0-8511-860318c4fc3b
+ # Management network prefix length
+ #mgmt_net_plen: 26
+ # Default gateway for management network
+ #mgmt_net_default_gateway: 135.144.188.131
+ # Management virtual IPv4 address to use for RTP MSC.
+ #rtp_msc_mgmt_vips: ["135.144.188.139","135.144.188.142","135.144.188.145","135.144.188.148","135.144.188.151","135.144.188.154","135.144.188.157","135.144.188.160"]
+ # Management fixed IPv4 address to use for RTP MSC A.
+ #rtp_msc_a_mgmt_ips: ["135.144.188.138","135.144.188.141","135.144.188.144","135.144.188.147","135.144.188.150","135.144.188.153","135.144.188.156","135.144.188.159"]
+ # Management fixed IPv4 address to use for RTP MSC B.
+ #rtp_msc_b_mgmt_ips: ["135.144.188.140","135.144.188.143","135.144.188.146","135.144.188.149","135.144.188.152","135.144.188.155","135.144.188.158","135.144.188.161"]
+
+ #
+ # Trusted/core network parameters
+ #
+ # Network ID of Trusted/core network.
+ #trusted_net_id: 3d584971-4ec6-408c-92fe-3073666fbcb9
+ # Virtual IPv4 address on Trusted/core network for RTP MSC.
+ #rtp_msc_trusted_vips: ["10.1.1.8","10.1.1.11","10.1.1.14","10.1.1.17","10.1.1.20","10.1.1.23","10.1.1.26","10.1.1.29"]
+ # Fixed IPv4 address on Trusted/core network for RTP MSC A.
+ #rtp_msc_a_trusted_ips: ["10.1.1.7","10.1.1.10","10.1.1.13","10.1.1.16","10.1.1.19","10.1.1.22","10.1.1.25","10.1.1.28"]
+
+ #
+ # Untrusted/access network parameters
+ #
+ # Using VLANs on Untrusted/access
+ #shared_int_untrusted_parent_net_id: a0ddd409-f6a7-465a-a091-827a12402252
+ # Virtual IPv4 address on Untrusted/access parent network for RTP MSC.
+ #rtp_msc_untrusted_parent_vips: ["11.0.0.9","11.0.0.12","11.0.0.15","11.0.0.18","11.0.0.21","11.0.0.24","11.0.0.27","11.0.0.30"]
+ # Fixed IPv4 address on Untrusted/access parent network for RTP MSC A.
+ #rtp_msc_a_untrusted_parent_ips: ["11.0.0.7","11.0.0.10","11.0.0.13","11.0.0.16","11.0.0.19","11.0.0.22","11.0.0.25","11.0.0.28"]
+
+ #perimeta_untrusted_num_vlans: 5
+ #perimeta_untrusted_vlan_ids: ["81", "1001", "1002", "1003", "1004"]
+ #perimeta_untrusted_vlan_networks: [95c74fbb-0650-4ac2-bd4f-7b4fb50b4b5d,aa1a5096-61fd-421b-a74b-0b4a72c47856,ced72584-9c09-4d67-9b9f-8faf4c081c45,6311c9db-c4ba-41f5-85e5-4a3cc85d7f55,79391429-9c52-44f5-b9a9-4547fec0e9d4]
+
+
+
+ # Virtual IPv4 address on Untrusted/access network for RTP MSC.
+ #rtp_msc_untrusted_vips: ["12.121.106.136","12.121.106.139","12.121.106.142","12.121.106.145","12.121.106.148","12.121.106.151","12.121.106.154","12.121.106.157"]
+ # Virtual IPv6 address on Untrusted/access network for RTP MSC.
+ #rtp_msc_untrusted_v6_vips: ["2001:1890:1001:2B38::2D:5","2001:1890:1001:2B38::2D:8","2001:1890:1001:2B38::2D:B","2001:1890:1001:2B38::2D:E","2001:1890:1001:2B38::2D:11","2001:1890:1001:2B38::2D:14","2001:1890:1001:2B38::2D:17","2001:1890:1001:2B38::2D:1A"]
+ # Fixed IPv4 address on Untrusted/access network for RTP MSC A.
+ #rtp_msc_a_untrusted_ips: ["12.121.106.135","12.121.106.138","12.121.106.141","12.121.106.144","12.121.106.147","12.121.106.150","12.121.106.153","12.121.106.156"]
+ # Fixed IPv6 address on Untrusted/access network for RTP MSC A.
+ #rtp_msc_a_untrusted_v6_ips: ["2001:1890:1001:2B38::2D:4","2001:1890:1001:2B38::2D:7","2001:1890:1001:2B38::2D:A","2001:1890:1001:2B38::2D:D","2001:1890:1001:2B38::2D:10","2001:1890:1001:2B38::2D:13","2001:1890:1001:2B38::2D:16","2001:1890:1001:2B38::2D:19"]
+
+ #
+ # A side healing / instantiation parameters
+ #
+ #
+ # Healing or instantiation? This is used to ensure that the json file passed
+ # to the VF is correct for the operation being carried out.
+ # This parameter must be set to one of the following values
+ # - single whitespace character
+ # - the string // not required for healing
+ # Simply uncomment the required value from the pair below
+ #
+ # Note that we need to do this because we cannot parmeterize the file name
+ # passed to get_file (which would be the more obvious way to do this)
+ #
+ # Uncomment for instantiation, comment for healing
+ rtp_msc_a_json_prefix: " "
+ # Uncomment for healing, comment for instantiation
+ # rtp_msc_a_json_prefix: "// healing, not required "
+
+ # Orchestrating a perimeta version 41 or above. Used to ensure that the
+ # tags in the json file are supported by the version of perimeta that is
+ # being instantiated.
+ # This parameter must be set to one of the following values
+ # - single whitespace character
+ # - the string // older perimeta, parameter not required
+ # Simply uncomment the required value from the pair below
+ #
+ # Note that we need to do this because we cannot parmeterize the file name
+ # passed to get_file (which would be the more obvious way to do this)
+ #
+ #
+ # Uncomment for V4.1.00 or above, comment for V4.0.40
+ rtp_msc_json_v41: " "
+ # Uncomment for V4.0.40, comment for V4.1.00 or above
+ # rtp_msc_json_v41: "// older perimeta, parameter not required "
+
+ # Using Radius for user account authentication? Used to ensure that the json
+ # file is configured correctly depending on whether we are using Radius or
+ # local authentication
+ #
+ # This parameter must be set to one of the following values
+ # - single whitespace character
+ # - the string // older perimeta, parameter not required
+ # Simply uncomment the required value from the pair below
+ #
+ # Note that we need to do this because we cannot parmeterize the file name
+ # passed to get_file (which would be the more obvious way to do this)
+ #
+ # Uncomment for Local authentication
+ #rtp_msc_json_use_radius_authentication: "// not using Radius "
+ # Uncomment for Radius authentication
+ ## rtp_msc_json_use_radius_authentication: " "
+
+ #
+ # Radius server parameters
+ #
+ #
+ # IP Address or hostname of RADIUS Server.
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #rtp_msc_json_radius_servername: "192.0.0.1"
+ # Radius Server port configuration - value between 0 and 65535
+ # Normal Radius Server port is 1812
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #rtp_msc_json_radius_port: 1812
+ # Radius Server shared secret
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #rtp_msc_json_radius_secret: "TopSecret"
+ # Radius Server connection timeout - value between 1 and 60
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #rtp_msc_json_radius_timeout: 3
+ # Radius Server default user authentication level.
+ # must be set to one of 'no-access', 'read-only', 'support', 'restricted-admin' or 'admin'
+ # Value is ignored if RADIUS is not being used but it still must be set
+ #rtp_msc_json_radius_default: "no-access"
+
+ #
+ # NTP server IPv4 addresses, separated by commas. These must be accessible from the management network
+ #
+ #ntp_server_ip_addrs: 132.201.84.13,155.179.58.11,155.179.59.249,155.179.82.25
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_a.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_a.yaml
new file mode 100644
index 0000000000..fbadb47a9d
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_a.yaml
@@ -0,0 +1,313 @@
+# Template for instantiating
+# - 1 x HA RTP MSC pair - A instance
+#
+# During initial instantiation, the Perimeta A instance is configured with
+# minimal configuration, commissioned as an RTP MSC and started. In addition, it
+# will attempt partnering with the B instance when it becomes availble.
+#
+# During healing, the Perimeta A instance is only configured with sufficient
+# configuration to allow partnering from the B instance (which will complete
+# the configuration).
+#
+# This template assumes that a base template stack has previously been
+# created so that deployment wide resources such as server-groups have been
+# defined.
+#
+# A perimeta deployment can support one or more RTP MSCs. The parameter
+# rtp_msc_a_index is used to make sure that the appropriate settings for this
+# RTP MSC are extracted from the various address and server group arrays.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate an A side Perimeta RTP MSC and optionally partner it with the corresponding B side
+
+parameters:
+ # General VNF parameters
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ vnf_id:
+ type: string
+ description: ID of VNF
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ # Availability zones
+ availability_zone_0:
+ type: string
+ description: Availability zone for A instances.
+ shared_perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ shared_perimeta_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on all interfaces.
+ shared_perimeta_rtp_msc_server_groups:
+ type: comma_delimited_list
+ description: Server group to use for these VMs
+ # Internal network parameters
+ shared_int_ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+
+ # Constraint below is copied from base module
+ shared_int_ha_net_prefix_len_v4:
+ type: number
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - range: { min: 0, max: 31 }
+ description: shared_int_ha_net_prefix_len_v4 must be between 0 and 31
+ # Management network parameters
+ mgmt_net_id:
+ type: string
+ description: Management network ID
+ constraints:
+ - custom_constraint: neutron.network
+ mgmt_net_plen:
+ type: number
+ description: Management network prefix length
+ constraints:
+ - range: { min: 0, max: 32 }
+ description: mgmt_net_plen must be between 0 and 32
+ mgmt_net_default_gateway:
+ type: string
+ description: Default gateway for management network
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of Trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ # untrusted parent network parameters
+ shared_int_untrusted_parent_net_id:
+ type: string
+ description: untrusted parent network id
+ # RTP MSC IP addresses on Untrusted/access parent network
+ rtp_msc_untrusted_parent_vips:
+ type: comma_delimited_list
+ description: List of virtual IPv4 addresses on Untrusted/access parent network for RTP MSC.
+ rtp_msc_a_untrusted_parent_ips:
+ type: comma_delimited_list
+ description: List of fixed IPv4 addresses on Untrusted/access parent network for RTP MSC A.
+ perimeta_untrusted_num_vlans:
+ type: number
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - range: { min: 1, max: 1001 }
+ description: perimeta_untrusted_num_vlans (number of VLANs to connect to the untrusted/access interface) must be between 1 and 1001
+ perimeta_untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ perimeta_untrusted_vlan_networks:
+ type: comma_delimited_list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ # RTP MSC parameters
+ rtp_msc_flavor_name:
+ type: string
+ description: Flavor to use for creating RTP MSC VM instance
+ constraints:
+ - custom_constraint: nova.flavor
+ rtp_msc_image_name:
+ type: string
+ description: Glance image to use for launching RTP MSC Perimeta instances.
+ constraints:
+ - custom_constraint: glance.image
+ # Index of the instance to instantiate / heal. This is used to access the
+ # various address / name / server group arrays to extract the information
+ # specific to this server.
+ #
+ # The constraints need to be co-ordinated with the parameter
+ # perimeta_max_rtp_msc_count in the base template. Unfortunately we cannot
+ # use a get_param call to get a constraint so it has to be a number.
+ #
+ # We also need to account for the fact that arrays start at zero and we are
+ # specifying the index in this parameter so the maximum constraint is 1 less
+ # than the maximum in the base template
+ rtp_msc_a_index:
+ type: number
+ description: Index of RTP MSC to instantiate / heal.
+ constraints:
+ - range: { min: 0, max: 19 }
+ description: rtp_msc_a_index must be between 0 and 19
+ # Hostames of the VIP and servers
+ rtp_msc_vnfcnames:
+ type: comma_delimited_list
+ description: List of vnfc names of the RTP MSC. This is the name associated with the perimeta pair and corresponds to the VIP
+ rtp_msc_a_vnfcnames:
+ type: comma_delimited_list
+ description: List of vnfc names of the A of RTP MSC
+ rtp_msc_b_vnfcnames:
+ type: comma_delimited_list
+ description: List of vnfc names of VM B of RTP MSC
+ # RTP MSC names of the physical A instance
+ rtp_msc_a_names:
+ type: comma_delimited_list
+ description: List of names of VM A of RTP MSC
+ # RTP MSC IP addresses on management network
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses to use for RTP MSC.
+ rtp_msc_a_mgmt_ips:
+ type: comma_delimited_list
+ description: List of management fixed IP addresses to use for RTP MSC A.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: List of management fixed IP addresses to use for RTP MSC B.
+ # RTP MSC IP addresses on internal HA network
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: List of HA fixed IP addresses to use for RTP MSC A.
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: List of HA fixed IP addresses to use for RTP MSC B.
+ # RTP MSC IP addresses on Trusted/core network
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: List of virtual IPv4 addresses on Trusted/core network for RTP MSC.
+ rtp_msc_a_trusted_ips:
+ type: comma_delimited_list
+ description: List of fixed IPv4 addresses on Trusted/core network for RTP MSC A.
+ # RTP MSC IP addresses on Untrusted/access network
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: List of virtual IPv4 addresses on Untrusted/access network for RTP MSC.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of virtual IPv6 addresses on Untrusted/access network for RTP MSC.
+ rtp_msc_a_untrusted_ips:
+ type: comma_delimited_list
+ description: List of fixed IPv4 addresses on Untrusted/access network for RTP MSC A.
+ rtp_msc_a_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IPv6 addresses on Untrusted/access network for RTP MSC A.
+ ntp_server_ip_addrs:
+ type: string
+ description: NTP server IPv4 addresses, separated by commas. These must be accessible from the management network
+ constraints:
+ - allowed_pattern: "((?:\\d{1,3}\\.){3}\\d{1,3},)*((?:\\d{1,3}\\.){3}\\d{1,3})"
+ description: ntp_server_ip_addrs must be a comma separated list of IPv4 addresses (with no spaces)
+ # Healing or instantiating? Used to build the correct json file
+ rtp_msc_a_json_prefix:
+ type: string
+ description: Json prefix, used to create the correct json file depending on the operation being performed
+ constraints:
+ - allowed_values:
+ - " "
+ - "// healing, not required "
+ description: rtp_msc_a_json_prefix must be set to ' ' or '// healing, not required '
+ # Running V4.1 perimeta or greater. Used to ensure that newer json tags are
+ # not included if the server will not recognize them
+ rtp_msc_json_v41:
+ type: string
+ description: Json prefix, used to ensure that the json tags will be recognised by the server loading them
+ constraints:
+ - allowed_values:
+ - " "
+ - "// older perimeta, parameter not required "
+ description: rtp_msc_json_v41 must be set to ' ' or '// older perimeta, parameter not required '
+ # Use Radius for user account authentication.
+ rtp_msc_json_use_radius_authentication:
+ type: string
+ description: Json prefix, used to indicate if user account authentication is done externally through Radius
+ constraints:
+ - allowed_values:
+ - " "
+ - "// not using Radius "
+ description: rtp_msc_json_use_radius_authentication must be set to ' ' or '// not using Radius '
+ # Radius Server address configuration
+ rtp_msc_json_radius_servername:
+ type: string
+ description: IP Address or hostname of RADIUS server
+ # Radius Server port configuration
+ rtp_msc_json_radius_port:
+ type: number
+ description: Port to use to connect to RADIUS server
+ constraints:
+ - range: { min: 0, max: 65535 }
+ description: rtp_msc_json_radius_port must be between 0 and 65535
+ # Radius Server shared secret
+ rtp_msc_json_radius_secret:
+ type: string
+ description: Shared secret to use for the RADIUS Server
+ # Radius Server connection timeout
+ rtp_msc_json_radius_timeout:
+ type: number
+ description: Timeout for connect requests to RADIUS server
+ constraints:
+ - range: { min: 1, max: 60 }
+ description: rtp_msc_json_timeout must be between 1 and 60
+ # Radius Server default user authentication level
+ rtp_msc_json_radius_default:
+ type: string
+ description: Default authentication level for RADIUS users
+ constraints:
+ - allowed_values:
+ - "no-access"
+ - "read-only"
+ - "support"
+ - "restricted-admin"
+ - "admin"
+ description: rtp_msc_json_radius_default must be set to one of 'no-access', 'read-only', 'support', 'restricted-admin' or 'admin'
+
+resources:
+ # Perimeta RTP MSC
+ perimeta_rtp_msc_a:
+ type: module_2_perimeta_sw_a_child.yaml
+ properties:
+ vnf_name: { get_param: vnf_name }
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'msc'
+ vf_module_id: { get_param: vf_module_id }
+ rtp_msc_a_names: { get_param: rtp_msc_a_names }
+ perimeta_instance_index: { get_param: rtp_msc_a_index }
+ perimeta_image_name: { get_param: rtp_msc_image_name }
+ perimeta_flavor_name: { get_param: rtp_msc_flavor_name }
+ perimeta_keypair: { get_param: shared_perimeta_keypair }
+ availability_zone_0: { get_param: availability_zone_0 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ rtp_msc_mgmt_vips: { get_param: rtp_msc_mgmt_vips }
+ rtp_msc_a_mgmt_ips: { get_param: rtp_msc_a_mgmt_ips }
+ perimeta_sec_groups: { get_param: shared_perimeta_sec_groups }
+ int_ha_net_id: { get_param: shared_int_ha_net_id }
+ int_ha_network_plen: { get_param: shared_int_ha_net_prefix_len_v4 }
+ rtp_msc_a_int_ha_ips: { get_param: rtp_msc_a_int_ha_ips }
+ rtp_msc_b_int_ha_ips: { get_param: rtp_msc_b_int_ha_ips }
+ trusted_net_id: { get_param: trusted_net_id }
+ rtp_msc_trusted_vips: { get_param: rtp_msc_trusted_vips }
+ rtp_msc_a_trusted_ips: { get_param: rtp_msc_a_trusted_ips }
+ rtp_msc_untrusted_vips: { get_param: rtp_msc_untrusted_vips }
+ rtp_msc_untrusted_v6_vips: { get_param: rtp_msc_untrusted_v6_vips }
+ rtp_msc_a_untrusted_ips: { get_param: rtp_msc_a_untrusted_ips }
+ rtp_msc_a_untrusted_v6_ips: { get_param: rtp_msc_a_untrusted_v6_ips }
+ int_untrusted_parent_net_id: { get_param: shared_int_untrusted_parent_net_id }
+ rtp_msc_untrusted_parent_vips: { get_param: rtp_msc_untrusted_parent_vips }
+ rtp_msc_a_untrusted_parent_ips: { get_param: rtp_msc_a_untrusted_parent_ips }
+ perimeta_untrusted_num_vlans: { get_param: perimeta_untrusted_num_vlans }
+ perimeta_untrusted_vlan_ids: { get_param: perimeta_untrusted_vlan_ids }
+ perimeta_untrusted_vlan_networks: { get_param: perimeta_untrusted_vlan_networks }
+ perimeta_server_groups: { get_param: shared_perimeta_rtp_msc_server_groups }
+ perimeta_config:
+ str_replace:
+ template: {get_file: rtp_msc_a_template.json}
+ params:
+ $HEALING_OR_INSTANTIATION: { get_param: rtp_msc_a_json_prefix }
+ $NTP_SERVER_IP_ADDRS: { get_param: ntp_server_ip_addrs }
+ $41ORABOVE: { get_param: rtp_msc_json_v41 }
+ $USERADIUSAUTH: { get_param: rtp_msc_json_use_radius_authentication }
+ $RADIUS_SERVERNAME: { get_param: rtp_msc_json_radius_servername }
+ $RADIUS_PORT: { get_param: rtp_msc_json_radius_port }
+ $RADIUS_SECRET: { get_param: rtp_msc_json_radius_secret }
+ $RADIUS_TIMEOUT: { get_param: rtp_msc_json_radius_timeout }
+ $RADIUS_DEFAULT: { get_param: rtp_msc_json_radius_default }
+ $LOCAL_MGMT_IP_ADDR: { get_param: [ rtp_msc_a_mgmt_ips, { get_param: rtp_msc_a_index } ] }
+ $REMOTE_MGMT_IP_ADDR: { get_param: [ rtp_msc_b_mgmt_ips, { get_param: rtp_msc_a_index } ] }
+ $MGMT_NETWORK_PLEN: { get_param: mgmt_net_plen }
+ $MGMT_NETWORK_DEFAULT_GATEWAY: { get_param: mgmt_net_default_gateway }
+ $VIRT_MGMT_IP_ADDR: { get_param: [ rtp_msc_mgmt_vips, { get_param: rtp_msc_a_index } ] }
+ $VM_NAME_A: { get_param: [ rtp_msc_a_vnfcnames, { get_param: rtp_msc_a_index } ] }
+ $VM_NAME_B: { get_param: [ rtp_msc_b_vnfcnames, { get_param: rtp_msc_a_index } ] }
+ $SYSTEM_NAME: { get_param: [ rtp_msc_vnfcnames, { get_param: rtp_msc_a_index } ] }
+ $COMPLETION_PARAMS: ''
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_b.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_b.env
new file mode 100644
index 0000000000..0a98f80305
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_b.env
@@ -0,0 +1,113 @@
+# Environment file for instantiating
+# - 1 x HA RTP MSC pair - B instance
+#
+# The Perimeta B instance is only configured with sufficient
+# configuration to allow partnering from the A instance (which will complete
+# the configuration).
+#
+# This template assumes that a base template stack has previously been
+# created so that deployment wide resources such as server-groups have been
+# defined.
+#
+# A perimeta deployment can support one or more RTP MSCs. The parameter
+# rtp_msc_b_index is used to make sure that the appropriate settings for this
+# RTP MSC are extracted from the various address and server group arrays.
+#
+
+parameters:
+ #
+ # General VNF parameters
+ #
+ # Unique VNF name
+ #vnf_name: tsbc0002
+ # ID of VNF
+ #vnf_id: ibcx0002
+ # Unique ID for this VF Module instance
+ #vf_module_id: ibcx
+ # Availability zone for B instances.
+ #availability_zone_1: DPA3_D2_AZ2
+
+ #
+ # Shared parameters from base template
+ #
+ # Internal HA network UUID
+ #shared_int_ha_net_id: "c8994bb0-9dbd-43e7-a8f9-658c54e35d23"
+ # Internal HA network IPv4 prefix length
+ #shared_int_ha_net_prefix_len_v4: 26
+ # Keypair UUID
+ #shared_perimeta_keypair: "atttest_key_pair"
+ # List of security groups to use for all interfaces
+ #shared_perimeta_sec_groups: [ "2412dd6a-d784-40a5-a195-7a7da2349178" ]
+ # Anti-affinity server groups to use for RTP MSCs
+ #shared_perimeta_rtp_msc_server_groups: ["be4b3fa9-112d-454e-952f-146e45202130","bcdd96eb-b3fc-42ee-9ae8-e13ad0a4f0b8","b293e29f-c101-4b4e-80d6-7a1b4173e4e2","fd791679-6b71-4c3a-b8b7-1d586559976e","98171a69-8956-4ce6-b303-1a15444ee47b","a35ba80b-c0c2-4c29-a9ae-4df26d33323f","2192327a-6a31-43b6-84c4-49abc597b4e6","b2843fa5-9f25-49b0-9dc6-5c1c0472e8d4"]
+
+ #
+ # RTP MSC parameters
+ #
+ # Index of RTP MSC to instantiate / heal. This is used as the index into the
+ # various address and service group arrays to get the information associated
+ # with that specific instance
+ #rtp_msc_b_index: 0
+ # Flavor to use for creating RTP MSC VM instance
+ rtp_msc_flavor_name: gv.c8r16d160
+ # Glance image to use for launching RTP MSC Perimeta instances.
+ rtp_msc_image_name: ISBC_SBC_v4.0.40_SU12.qcow2
+
+
+
+ # Name of VM B of RTP MSC
+ #rtp_msc_b_names: ["ibcx0002vm004","ibcx0002vm006","ibcx0002vm008","ibcx0002vm010","ibcx0002vm012","ibcx0002vm014","ibcx0002vm016","ibcx0002vm018"]
+
+ #
+ # HA network parameters
+ #
+ # HA fixed IPv4 address to use for RTP MSC B.
+ #rtp_msc_b_int_ha_ips: ["172.26.1.7","172.26.1.9","172.26.1.11","172.26.1.13","172.26.1.15","172.26.1.17","172.26.1.19","172.26.1.21"]
+ # HA fixed IPv4 address to use for RTP MSC A.
+ #rtp_msc_a_int_ha_ips: ["172.26.1.6","172.26.1.8","172.26.1.10","172.26.1.12","172.26.1.14","172.26.1.16","172.26.1.18","172.26.1.20"]
+
+ #
+ # Management network parameters
+ #
+ # Management network ID
+ #mgmt_net_id: 4b5621b0-4ca4-4ea0-8511-860318c4fc3b
+ # Management virtual IPv4 address to use for RTP MSC.
+ #rtp_msc_mgmt_vips: ["135.144.188.139","135.144.188.142","135.144.188.145","135.144.188.148","135.144.188.151","135.144.188.154","135.144.188.157","135.144.188.160"]
+ # Management fixed IPv4 address to use for RTP MSC B.
+ #rtp_msc_b_mgmt_ips: ["135.144.188.140","135.144.188.143","135.144.188.146","135.144.188.149","135.144.188.152","135.144.188.155","135.144.188.158","135.144.188.161"]
+
+ #
+ # Trusted/core network parameters
+ #
+ # Network ID of Trusted/core network.
+ #trusted_net_id: 3d584971-4ec6-408c-92fe-3073666fbcb9
+ # Virtual IPv4 address on Trusted/core network for RTP MSC.
+ #rtp_msc_trusted_vips: ["10.1.1.8","10.1.1.11","10.1.1.14","10.1.1.17","10.1.1.20","10.1.1.23","10.1.1.26","10.1.1.29"]
+ # Fixed IPv4 address on Trusted/core network for RTP MSC B.
+ #rtp_msc_b_trusted_ips: ["10.1.1.9","10.1.1.12","10.1.1.15","10.1.1.18","10.1.1.21","10.1.1.24","10.1.1.27","10.1.1.30"]
+
+ #
+ # Untrusted/access network parameters
+ #
+ # Using VLANs on Untrusted/access
+ #shared_int_untrusted_parent_net_id: a0ddd409-f6a7-465a-a091-827a12402252
+ # Virtual IPv4 address on Untrusted/access parent network for RTP MSC.
+ #rtp_msc_untrusted_parent_vips: ["11.0.0.9","11.0.0.12","11.0.0.15","11.0.0.18","11.0.0.21","11.0.0.24","11.0.0.27","11.0.0.30"]
+ # Fixed IPv4 address on Untrusted/access parent network for RTP MSC B.
+ #rtp_msc_b_untrusted_parent_ips: ["11.0.0.8","11.0.0.11","11.0.0.14","11.0.0.17","11.0.0.20","11.0.0.23","11.0.0.26","11.0.0.29"]
+
+ #perimeta_untrusted_num_vlans: 5
+ #perimeta_untrusted_vlan_ids: ["81", "1001", "1002", "1003", "1004"]
+ #perimeta_untrusted_vlan_networks: [95c74fbb-0650-4ac2-bd4f-7b4fb50b4b5d,aa1a5096-61fd-421b-a74b-0b4a72c47856,ced72584-9c09-4d67-9b9f-8faf4c081c45,6311c9db-c4ba-41f5-85e5-4a3cc85d7f55,79391429-9c52-44f5-b9a9-4547fec0e9d4]
+
+
+
+ # Virtual IPv4 address on Untrusted/access network for RTP MSC.
+ #rtp_msc_untrusted_vips: ["12.121.106.136","12.121.106.139","12.121.106.142","12.121.106.145","12.121.106.148","12.121.106.151","12.121.106.154","12.121.106.157"]
+ # Virtual IPv6 address on Untrusted/access network for RTP MSC.
+ #rtp_msc_untrusted_v6_vips: ["2001:1890:1001:2B38::2D:5","2001:1890:1001:2B38::2D:8","2001:1890:1001:2B38::2D:B","2001:1890:1001:2B38::2D:E","2001:1890:1001:2B38::2D:11","2001:1890:1001:2B38::2D:14","2001:1890:1001:2B38::2D:17","2001:1890:1001:2B38::2D:1A"]
+ # Fixed IPv4 address on Untrusted/access network for RTP MSC B.
+ #rtp_msc_b_untrusted_ips: ["12.121.106.137","12.121.106.140","12.121.106.143","12.121.106.146","12.121.106.149","12.121.106.152","12.121.106.155","12.121.106.158"]
+ # Fixed IPv6 address on Untrusted/access network for RTP MSC B.
+ #rtp_msc_b_untrusted_v6_ips: ["2001:1890:1001:2B38::2D:6","2001:1890:1001:2B38::2D:9","2001:1890:1001:2B38::2D:C","2001:1890:1001:2B38::2D:F","2001:1890:1001:2B38::2D:12","2001:1890:1001:2B38::2D:15","2001:1890:1001:2B38::2D:18","2001:1890:1001:2B38::2D:1B"]
+
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_b.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_b.yaml
new file mode 100644
index 0000000000..d3866bff77
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_rtp_msc_b.yaml
@@ -0,0 +1,197 @@
+# Template for instantiating
+# - 1 x HA RTP MSC pair - B instance
+#
+# The Perimeta B instance is only configured with sufficient
+# configuration to allow partnering from the A instance (which will complete
+# the configuration).
+#
+# This template assumes that a base template stack has previously been
+# created so that deployment wide resources such as server-groups have been
+# defined.
+#
+# A perimeta deployment can support one or more RTP MSCs. The parameter
+# rtp_msc_b_index is used to make sure that the appropriate settings for this
+# RTP MSC are extracted from the various address and server group arrays.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate an B side Perimeta RTP MSC
+
+parameters:
+ # General VNF parameters
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ vnf_id:
+ type: string
+ description: ID of VNF
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ # Availability zones
+ availability_zone_1:
+ type: string
+ description: Availability zone for B instances.
+ shared_perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ shared_perimeta_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on all interfaces.
+ shared_perimeta_rtp_msc_server_groups:
+ type: comma_delimited_list
+ description: Server group to use for these VMs
+ # Internal network parameters
+ shared_int_ha_net_id:
+ type: string
+ description: HA network id
+ constraints:
+ - custom_constraint: neutron.network
+
+ # Constraint below is copied from base module
+ shared_int_ha_net_prefix_len_v4:
+ type: number
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - range: { min: 0, max: 31 }
+ description: shared_int_ha_net_prefix_len_v4 must be between 0 and 31
+ # Management network parameters
+ mgmt_net_id:
+ type: string
+ description: Management network ID
+ constraints:
+ - custom_constraint: neutron.network
+ # Trusted/core network parameters
+ trusted_net_id:
+ type: string
+ description: Network ID of Trusted/core network.
+ constraints:
+ - custom_constraint: neutron.network
+ # untrusted parent network parameters
+ shared_int_untrusted_parent_net_id:
+ type: string
+ description: untrusted parent network id
+ # RTP MSC IP addresses on Untrusted/access parent network
+ rtp_msc_untrusted_parent_vips:
+ type: comma_delimited_list
+ description: List of virtual IPv4 addresses on Untrusted/access parent network for RTP MSC.
+ rtp_msc_b_untrusted_parent_ips:
+ type: comma_delimited_list
+ description: List of fixed IPv4 addresses on Untrusted/access parent network for RTP MSC B.
+ perimeta_untrusted_num_vlans:
+ type: number
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - range: { min: 1, max: 1001 }
+ description: perimeta_untrusted_num_vlans (number of VLANs to connect to the untrusted/access interface) must be between 1 and 1001
+ perimeta_untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ perimeta_untrusted_vlan_networks:
+ type: comma_delimited_list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ # RTP MSC parameters
+ rtp_msc_flavor_name:
+ type: string
+ description: Flavor to use for creating RTP MSC VM instance
+ constraints:
+ - custom_constraint: nova.flavor
+ rtp_msc_image_name:
+ type: string
+ description: Glance image to use for launching RTP MSC Perimeta instances.
+ constraints:
+ - custom_constraint: glance.image
+ # Index of the instance to instantiate / heal. This is used to access the
+ # various address / name / server group arrays to extract the information
+ # specific to this server.
+ #
+ # The constraints need to be co-ordinated with the parameter
+ # perimeta_max_rtp_msc_count in the base template. Unfortunately we cannot
+ # use a get_param call to get a constraint so it has to be a number.
+ #
+ # We also need to account for the fact that arrays start at zero and we are
+ # specifying the index in this parameter so the maximum constraint is 1 less
+ # than the maximum in the base template
+ rtp_msc_b_index:
+ type: number
+ description: Index of RTP MSC to instantiate / heal.
+ constraints:
+ - range: { min: 0, max: 19 }
+ description: rtp_msc_b_index must be between 0 and 19
+ # RTP MSC names of the physical B instance
+ rtp_msc_b_names:
+ type: comma_delimited_list
+ description: List of names of VM B of RTP MSC
+ # RTP MSC IP addresses on management network
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses to use for RTP MSC.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: List of management fixed IP addresses to use for RTP MSC B.
+ # RTP MSC IP addresses on internal HA network
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: List of HA fixed IP addresses to use for RTP MSC B.
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: List of HA fixed IP addresses to use for RTP MSC A.
+ # RTP MSC IP addresses on Trusted/core network
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: List of virtual IPv4 addresses on Trusted/core network for RTP MSC.
+ rtp_msc_b_trusted_ips:
+ type: comma_delimited_list
+ description: List of fixed IPv4 addresses on Trusted/core network for RTP MSC B.
+ # RTP MSC IP addresses on Untrusted/access network
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: List of virtual IPv4 addresses on Untrusted/access network for RTP MSC.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of virtual IPv6 addresses on Untrusted/access network for RTP MSC.
+ rtp_msc_b_untrusted_ips:
+ type: comma_delimited_list
+ description: List of fixed IPv4 addresses on Untrusted/access network for RTP MSC B.
+ rtp_msc_b_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IPv6 addresses on Untrusted/access network for RTP MSC B.
+
+resources:
+ # Perimeta RTP MSC
+ perimeta_rtp_msc_b:
+ type: module_2_perimeta_sw_b_child.yaml
+ properties:
+ vnf_name: { get_param: vnf_name }
+ vnf_id: { get_param: vnf_id }
+ vm_role: 'msc'
+ vf_module_id: { get_param: vf_module_id }
+ rtp_msc_b_names: { get_param: rtp_msc_b_names }
+ perimeta_instance_index: { get_param: rtp_msc_b_index }
+ perimeta_image_name: { get_param: rtp_msc_image_name }
+ perimeta_flavor_name: { get_param: rtp_msc_flavor_name }
+ perimeta_keypair: { get_param: shared_perimeta_keypair }
+ availability_zone_1: { get_param: availability_zone_1 }
+ mgmt_net_id: { get_param: mgmt_net_id }
+ rtp_msc_mgmt_vips: { get_param: rtp_msc_mgmt_vips }
+ rtp_msc_b_mgmt_ips: { get_param: rtp_msc_b_mgmt_ips }
+ perimeta_sec_groups: { get_param: shared_perimeta_sec_groups }
+ int_ha_net_id: { get_param: shared_int_ha_net_id }
+ int_ha_network_plen: { get_param: shared_int_ha_net_prefix_len_v4 }
+ rtp_msc_b_int_ha_ips: { get_param: rtp_msc_b_int_ha_ips }
+ rtp_msc_a_int_ha_ips: { get_param: rtp_msc_a_int_ha_ips }
+ trusted_net_id: { get_param: trusted_net_id }
+ rtp_msc_trusted_vips: { get_param: rtp_msc_trusted_vips }
+ rtp_msc_b_trusted_ips: { get_param: rtp_msc_b_trusted_ips }
+ rtp_msc_untrusted_vips: { get_param: rtp_msc_untrusted_vips }
+ rtp_msc_untrusted_v6_vips: { get_param: rtp_msc_untrusted_v6_vips }
+ rtp_msc_b_untrusted_ips: { get_param: rtp_msc_b_untrusted_ips }
+ rtp_msc_b_untrusted_v6_ips: { get_param: rtp_msc_b_untrusted_v6_ips }
+ int_untrusted_parent_net_id: { get_param: shared_int_untrusted_parent_net_id }
+ rtp_msc_untrusted_parent_vips: { get_param: rtp_msc_untrusted_parent_vips }
+ rtp_msc_b_untrusted_parent_ips: { get_param: rtp_msc_b_untrusted_parent_ips }
+ perimeta_untrusted_num_vlans: { get_param: perimeta_untrusted_num_vlans }
+ perimeta_untrusted_vlan_ids: { get_param: perimeta_untrusted_vlan_ids }
+ perimeta_untrusted_vlan_networks: { get_param: perimeta_untrusted_vlan_networks }
+ perimeta_server_groups: { get_param: shared_perimeta_rtp_msc_server_groups }
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_sw_a_child.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_sw_a_child.yaml
new file mode 100644
index 0000000000..fdf5b2a662
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_sw_a_child.yaml
@@ -0,0 +1,286 @@
+# Heat template which intstantiates an A side Perimeta RTP MSC instance with
+# 4 vNICs.
+#
+# This is designed to be included in a higher level template.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# Host anti-affinity is achieved using different availability zones for
+# the Perimeta instance or server group anti-affinity if they are in the
+# same availability zone.
+#
+# Template requires Juno or above and has been tested on Kilo.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate an A side Perimeta RTP MSC instance with 4 vNICs as part of a nested template
+
+parameters:
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ vnf_id:
+ type: string
+ description: VNF ID of this deployment
+ vm_role:
+ type: string
+ description: Role of these VMs
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ # Index of the instance to instantiate / heal. This is used to access the
+ # various address / name / server group arrays to extract the information
+ # specific to this server.
+ #
+ # The constraints need to be co-ordinated with the parameter
+ # perimeta_max_rtp_msc_count in the base template. Unfortunately we cannot
+ # use a get_param call to get a constraint so it has to be a number.
+ #
+ # We also need to account for the fact that arrays start at zero and we are
+ # specifying the index in this parameter so the maximum constraint is 1 less
+ # than the maximum in the base template
+ perimeta_instance_index:
+ type: number
+ description: Index of instance among multiple instances. Use to retrieve correct parameter for this instance when passed all parameters for all instances.
+ constraints:
+ - range: { min: 0, max: 19 }
+ description: perimeta_instance_index must be between 0 and 19
+ rtp_msc_a_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ availability_zone_0:
+ # Can be commented out along with references if always using a single availability zone
+ type: string
+ description: Availability zone for A instances.
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses for all instances.
+ rtp_msc_a_mgmt_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of A instances.
+ int_ha_net_id:
+ type: string
+ description: HA network id
+ int_ha_network_plen:
+ # Constraint copied from base module
+ type: number
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - range: { min: 0, max: 31 }
+ description: int_ha_network_plen must be between 0 and 31
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ trusted_net_id:
+ type: string
+ description: Trusted/core network UUID
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: List of Trusted/core virtual IP addresses for all instances.
+ rtp_msc_a_trusted_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as Trusted/core fixed IPs of A instances.
+ perimeta_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: List of Untrusted/access virtual IP addresses for all instances.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of Untrusted/access alternate virtual IP addresses for all instances.
+ rtp_msc_a_untrusted_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as Untrusted/access fixed IPs of A instances.
+ rtp_msc_a_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as Untrusted/access alternate fixed IPs of A instances.
+ int_untrusted_parent_net_id:
+ type: string
+ description: internal Untrusted/access parent network id
+ rtp_msc_untrusted_parent_vips:
+ type: comma_delimited_list
+ description: List of Untrusted/access parent virtual IP addresses for all instances.
+ rtp_msc_a_untrusted_parent_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as Untrusted/access parent fixed IPs of A instances.
+ perimeta_untrusted_num_vlans:
+ # constraint copied from parent module
+ type: number
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - range: { min: 1, max: 1001 }
+ description: perimeta_untrusted_num_vlans (number of VLANs to connect to the untrusted/access interface) must be between 1 and 1001
+ perimeta_untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ perimeta_untrusted_vlan_networks:
+ type: comma_delimited_list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ perimeta_server_groups:
+ type: comma_delimited_list
+ description: Server groups to use for these VMs
+ perimeta_config:
+ type: string
+ description: JSON orchestration template configuration for instance.
+
+resources:
+ # Perimeta management ports
+ perimeta_rtp_msc_a_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_0_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_a_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ rtp_msc_a_mgmt_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ rtp_msc_mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta HA ports
+ perimeta_rtp_msc_a_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_ha_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_a_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: int_ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ rtp_msc_a_int_ha_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: perimeta_sec_groups }
+
+ # Perimeta Trusted/core service network ports
+ #
+ # Dual stack core network
+ # - if only IPv4 required comment out second entry in fixed_ips and allowed_addess_pairs parameters.
+ # - if only IPv6 required comment out first entry in fixed_ips and allowed_addess_pairs parameters.
+ perimeta_rtp_msc_a_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_trusted_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_a_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ rtp_msc_a_trusted_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ rtp_msc_trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta Untrusted/access service network ports
+ # VLAN being used on this service interface.
+ # The parent network port is used to anchor the VLANs and is not used to
+ # route actual traffic for the service interface. This means that we can
+ # create a dummy network in the base module and use that instead of the
+ # real untrusted network
+
+ perimeta_rtp_msc_a_untrusted_parent_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_parent_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_a_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: int_untrusted_parent_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ rtp_msc_a_untrusted_parent_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ rtp_msc_untrusted_parent_vips, { get_param: perimeta_instance_index } ] }
+
+
+ # Contrail VLAN subinterfaces
+ perimeta_rtp_msc_a_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: perimeta_untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ perimeta_subinterface_instance_index: "%index%"
+ perimeta_subinterface_name_prefix:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_port_vlan
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_a_names, { get_param: perimeta_instance_index } ] }
+ perimeta_parent_interface: { get_resource: perimeta_rtp_msc_a_untrusted_parent_0_port }
+ perimeta_mac_address: { get_attr: [ perimeta_rtp_msc_a_untrusted_parent_0_port, mac_address ] }
+ perimeta_ip_0: { get_param: [ rtp_msc_a_untrusted_ips, { get_param: perimeta_instance_index } ] }
+ perimeta_v6_ip_0: { get_param: [ rtp_msc_a_untrusted_v6_ips, { get_param: perimeta_instance_index } ] }
+ perimeta_vip_0: { get_param: [ rtp_msc_untrusted_vips, { get_param: perimeta_instance_index } ] }
+ perimeta_v6_vip_0: { get_param: [ rtp_msc_untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ perimeta_vlan_ids: { get_param: perimeta_untrusted_vlan_ids }
+ perimeta_vlan_networks: { get_param: perimeta_untrusted_vlan_networks }
+
+ # Add any additional service ports here.
+
+ perimeta_rtp_msc_a_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [ rtp_msc_a_names, { get_param: perimeta_instance_index } ] }
+ image: { get_param: perimeta_image_name }
+ flavor: { get_param: perimeta_flavor_name }
+ key_name: { get_param: perimeta_keypair }
+ scheduler_hints: { group: { get_param: [ perimeta_server_groups, { get_param: perimeta_instance_index } ] } }
+ metadata:
+ 'vnf_name': { get_param: vnf_name }
+ 'vnf_id': { get_param: vnf_id }
+ 'vm_role':
+ str_replace:
+ template: $ROLE_a
+ params:
+ $ROLE: { get_param: vm_role }
+ 'vf_module_id': { get_param: vf_module_id }
+ 'msw_template_version': '17.07.04 - 2017-09-01'
+ personality:
+ '/opt/MetaSwitch/init/custom.ini': { get_file: custom.ini }
+ networks:
+ - port: { get_resource: perimeta_rtp_msc_a_mgmt_0_port }
+ - port: { get_resource: perimeta_rtp_msc_a_ha_0_port }
+ - port: { get_resource: perimeta_rtp_msc_a_trusted_0_port }
+ - port: { get_resource: perimeta_rtp_msc_a_untrusted_parent_0_port }
+ availability_zone: { get_param: availability_zone_0 }
+ config_drive: True
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ template: { get_param: perimeta_config }
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_rtp_msc_a_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_rtp_msc_a_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_rtp_msc_a_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_rtp_msc_a_untrusted_parent_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ rtp_msc_a_int_ha_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ rtp_msc_b_int_ha_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: int_ha_network_plen } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_sw_b_child.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_sw_b_child.yaml
new file mode 100644
index 0000000000..3aa1a66ba1
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/module_2_perimeta_sw_b_child.yaml
@@ -0,0 +1,292 @@
+# Heat template which intstantiates an B side Perimeta RTP MSC instance with
+# 4 vNICs.
+#
+# This is designed to be included in a higher level template.
+#
+# This template puts the Perimeta configuration in place using userdata
+# injected via OpenStack's ConfigDrive mechanism.
+#
+# Host anti-affinity is achieved using different availability zones for
+# the Perimeta instance or server group anti-affinity if they are in the
+# same availability zone.
+#
+# Template requires Juno or above and has been tested on Kilo.
+#
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate an B side Perimeta RTP MSC instance with 4 vNICs as part of a nested template
+
+parameters:
+ vnf_name:
+ type: string
+ description: Unique name for this VNF instance
+ vnf_id:
+ type: string
+ description: VNF ID of this deployment
+ vm_role:
+ type: string
+ description: Role of these VMs
+ vf_module_id:
+ type: string
+ description: Unique ID for this VF Module instance
+ # Index of the instance to instantiate / heal. This is used to access the
+ # various address / name / server group arrays to extract the information
+ # specific to this server.
+ #
+ # The constraints need to be co-ordinated with the parameter
+ # perimeta_max_rtp_msc_count in the base template. Unfortunately we cannot
+ # use a get_param call to get a constraint so it has to be a number.
+ #
+ # We also need to account for the fact that arrays start at zero and we are
+ # specifying the index in this parameter so the maximum constraint is 1 less
+ # than the maximum in the base template
+ perimeta_instance_index:
+ type: number
+ description: Index of instance among multiple instances. Use to retrieve correct parameter for this instance when passed all parameters for all instances.
+ constraints:
+ - range: { min: 0, max: 19 }
+ description: perimeta_instance_index must be between 0 and 19
+ rtp_msc_b_names:
+ type: comma_delimited_list
+ description: List of names of Perimeta VM B instances, indexed by perimeta_instance_index
+ perimeta_image_name:
+ type: string
+ description: Glance image for Perimeta instance
+ perimeta_flavor_name:
+ type: string
+ description: Flavor to use for creating VM instances
+ perimeta_keypair:
+ type: string
+ description: Keypair to use for accessing this Perimeta instance
+ availability_zone_1:
+ # Can be commented out along with references if always using a single availability zone
+ type: string
+ description: Availability zone for B instances. May be the same as A instance.
+ mgmt_net_id:
+ type: string
+ description: Management network id
+ rtp_msc_mgmt_vips:
+ type: comma_delimited_list
+ description: List of management virtual IP addresses for all instances.
+ rtp_msc_b_mgmt_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as management IPs of B instances.
+ int_ha_net_id:
+ type: string
+ description: HA network id
+ int_ha_network_plen:
+ # Constraint copied from base module
+ type: number
+ description: Prefix length of subnet associated with internal HA network
+ constraints:
+ - range: { min: 0, max: 31 }
+ description: int_ha_network_plen must be between 0 and 31
+ rtp_msc_b_int_ha_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of B instances.
+ rtp_msc_a_int_ha_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as HA IPs of A instances.
+ trusted_net_id:
+ type: string
+ description: Trusted/core network UUID
+ rtp_msc_trusted_vips:
+ type: comma_delimited_list
+ description: List of Trusted/core virtual IP addresses for all instances.
+ rtp_msc_b_trusted_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as Trusted/core fixed IPs of B instances.
+ perimeta_sec_groups:
+ type: comma_delimited_list
+ description: List of security groups to add on trusted interfaces.
+ rtp_msc_untrusted_vips:
+ type: comma_delimited_list
+ description: List of Untrusted/access virtual IP addresses for all instances.
+ rtp_msc_untrusted_v6_vips:
+ type: comma_delimited_list
+ description: List of Untrusted/access alternate virtual IP addresses for all instances.
+ rtp_msc_b_untrusted_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as Untrusted/access fixed IPs of B instances.
+ rtp_msc_b_untrusted_v6_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as Untrusted/access alternate fixed IPs of B instances.
+ int_untrusted_parent_net_id:
+ type: string
+ description: internal Untrusted/access parent network id
+ rtp_msc_untrusted_parent_vips:
+ type: comma_delimited_list
+ description: List of Untrusted/access parent virtual IP addresses for all instances.
+ rtp_msc_b_untrusted_parent_ips:
+ type: comma_delimited_list
+ description: List of fixed IP addresses to use as Untrusted/access parent fixed IPs of B instances.
+ perimeta_untrusted_num_vlans:
+ # constraint copied from parent module
+ type: number
+ description: number of VLANs to connect to the untrusted/access interface
+ constraints:
+ - range: { min: 1, max: 1001 }
+ description: perimeta_untrusted_num_vlans (number of VLANs to connect to the untrusted/access interface) must be between 1 and 1001
+ perimeta_untrusted_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use on the untrusted/access network
+ perimeta_untrusted_vlan_networks:
+ type: comma_delimited_list
+ description: List of Contrail VLAN networks to use on the untrusted/access network. The order and number of these must match the VLAN ID list.
+ perimeta_server_groups:
+ type: comma_delimited_list
+ description: Server groups to use for these VMs
+
+resources:
+ # Perimeta management ports
+ perimeta_rtp_msc_b_mgmt_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_mgmt_0_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_b_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: mgmt_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ rtp_msc_b_mgmt_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ rtp_msc_mgmt_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta HA ports
+ perimeta_rtp_msc_b_ha_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_ha_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_b_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: int_ha_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ rtp_msc_b_int_ha_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: perimeta_sec_groups }
+
+ # Perimeta Trusted/core service network ports
+ #
+ # Dual stack core network
+ # - if only IPv4 required comment out second entry in fixed_ips and allowed_addess_pairs parameters.
+ # - if only IPv6 required comment out first entry in fixed_ips and allowed_addess_pairs parameters.
+ perimeta_rtp_msc_b_trusted_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_trusted_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_b_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: trusted_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ rtp_msc_b_trusted_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ rtp_msc_trusted_vips, { get_param: perimeta_instance_index } ] }
+
+ # Perimeta Untrusted/access service network ports
+ # VLAN being used on this service interface.
+ # The parent network port is used to anchor the VLANs and is not used to
+ # route actual traffic for the service interface. This means that we can
+ # create a dummy network in the base module and use that instead of the
+ # real untrusted network
+
+ perimeta_rtp_msc_b_untrusted_parent_0_port:
+ type: OS::Neutron::Port
+ properties:
+ name:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_parent_port
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_b_names, { get_param: perimeta_instance_index } ] }
+ network: { get_param: int_untrusted_parent_net_id }
+ fixed_ips:
+ - ip_address: { get_param: [ rtp_msc_b_untrusted_parent_ips, { get_param: perimeta_instance_index } ] }
+ security_groups: { get_param: perimeta_sec_groups }
+ allowed_address_pairs:
+ - ip_address: { get_param: [ rtp_msc_untrusted_parent_vips, { get_param: perimeta_instance_index } ] }
+
+
+ # Contrail VLAN subinterfaces
+ perimeta_rtp_msc_b_untrusted_0_vlan_ports:
+ type: OS::Heat::ResourceGroup
+ properties:
+ count: { get_param: perimeta_untrusted_num_vlans }
+ resource_def:
+ type: vlan_subinterface_dual.yaml
+ properties:
+ perimeta_subinterface_instance_index: "%index%"
+ perimeta_subinterface_name_prefix:
+ str_replace:
+ template: $VNF_NAME_$VM_untrusted_port_vlan
+ params:
+ $VNF_NAME : { get_param: vnf_name }
+ $VM: { get_param: [ rtp_msc_b_names, { get_param: perimeta_instance_index } ] }
+ perimeta_parent_interface: { get_resource: perimeta_rtp_msc_b_untrusted_parent_0_port }
+ perimeta_mac_address: { get_attr: [ perimeta_rtp_msc_b_untrusted_parent_0_port, mac_address ] }
+ perimeta_ip_0: { get_param: [ rtp_msc_b_untrusted_ips, { get_param: perimeta_instance_index } ] }
+ perimeta_v6_ip_0: { get_param: [ rtp_msc_b_untrusted_v6_ips, { get_param: perimeta_instance_index } ] }
+ perimeta_vip_0: { get_param: [ rtp_msc_untrusted_vips, { get_param: perimeta_instance_index } ] }
+ perimeta_v6_vip_0: { get_param: [ rtp_msc_untrusted_v6_vips, { get_param: perimeta_instance_index } ] }
+ perimeta_vlan_ids: { get_param: perimeta_untrusted_vlan_ids }
+ perimeta_vlan_networks: { get_param: perimeta_untrusted_vlan_networks }
+
+ # Add any additional service ports here.
+
+ perimeta_rtp_msc_b_server_0:
+ type: OS::Nova::Server
+ properties:
+ name: { get_param: [ rtp_msc_b_names, { get_param: perimeta_instance_index } ] }
+ image: { get_param: perimeta_image_name }
+ flavor: { get_param: perimeta_flavor_name }
+ key_name: { get_param: perimeta_keypair }
+ scheduler_hints: { group: { get_param: [ perimeta_server_groups, { get_param: perimeta_instance_index } ] } }
+ metadata:
+ 'vnf_name': { get_param: vnf_name }
+ 'vnf_id': { get_param: vnf_id }
+ 'vm_role':
+ str_replace:
+ template: $ROLE_b
+ params:
+ $ROLE: { get_param: vm_role }
+ 'vf_module_id': { get_param: vf_module_id }
+ 'msw_template_version': '17.07.04 - 2017-09-01'
+ networks:
+ - port: { get_resource: perimeta_rtp_msc_b_mgmt_0_port }
+ - port: { get_resource: perimeta_rtp_msc_b_ha_0_port }
+ - port: { get_resource: perimeta_rtp_msc_b_trusted_0_port }
+ - port: { get_resource: perimeta_rtp_msc_b_untrusted_parent_0_port }
+ availability_zone: { get_param: availability_zone_1 }
+ config_drive: True
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ template: |
+ {
+ "vnic_assignment": {
+ "IBG1mgmt": {"mac": "$MGMT_MACADDR"},
+ "IPG1": {"mac": "$HA_MACADDR"},
+ "RPG1": {"mac": "$TRUSTED_MACADDR"},
+ "RPG2": {"mac": "$UNTRUSTED_MACADDR"}
+ },
+ "ip_ha_local": "$LOCAL_HA_IP_ADDR",
+ "ip_ha_remote": "$REMOTE_HA_IP_ADDR",
+ "ip_ha_plen": "$HA_NETWORK_PLEN"
+ }
+ params:
+ $MGMT_MACADDR: { get_attr: [perimeta_rtp_msc_b_mgmt_0_port, mac_address] }
+ $HA_MACADDR: { get_attr: [perimeta_rtp_msc_b_ha_0_port, mac_address] }
+ $TRUSTED_MACADDR: { get_attr: [perimeta_rtp_msc_b_trusted_0_port, mac_address] }
+ $UNTRUSTED_MACADDR: { get_attr: [perimeta_rtp_msc_b_untrusted_parent_0_port, mac_address] }
+ $LOCAL_HA_IP_ADDR: { get_param: [ rtp_msc_b_int_ha_ips, { get_param: perimeta_instance_index } ] }
+ $REMOTE_HA_IP_ADDR: { get_param: [ rtp_msc_a_int_ha_ips, { get_param: perimeta_instance_index } ] }
+ $HA_NETWORK_PLEN: { get_param: int_ha_network_plen } \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/vlan_subinterface_dual.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/vlan_subinterface_dual.yaml
new file mode 100644
index 0000000000..8ee34a1265
--- /dev/null
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/heat/nested/nestedwithoutNodeTemplates/inputs/vlan_subinterface_dual.yaml
@@ -0,0 +1,102 @@
+heat_template_version: 2014-10-16
+
+description: >
+ HOT template to instantiate a single Contrail VLAN sub-interface with associated instance IP addresses and allowed address pairs
+
+parameters:
+ perimeta_subinterface_instance_index:
+ # constraint copied from parent module
+ type: number
+ description: Index of instance among multiple instances. Use to retrieve correct parameter for this instance when passed all parameters for all instances.
+ constraints:
+ - range: { min: 1, max: 1001 }
+ description: perimeta_subinterface_instance_index must be between 1 and 1001
+ perimeta_subinterface_name_prefix:
+ type: string
+ description: Combined with subinterface_instance_index, this is used as the name of the subinterface resource
+ perimeta_parent_interface:
+ type: string
+ description: Parent Contrail interface
+ perimeta_mac_address:
+ type: string
+ description: MAC address to use for subinterface
+ perimeta_ip_0:
+ type: string
+ description: IPv4 address associated with subinterfaces
+ perimeta_v6_ip_0:
+ type: string
+ description: IPv6 address associated with subinterfaces
+ perimeta_vip_0:
+ type: string
+ description: virtual IPv4 address associated with subinterfaces
+ perimeta_v6_vip_0:
+ type: string
+ description: virtual IPv6 address associated with subinterfaces
+ perimeta_vlan_ids:
+ type: comma_delimited_list
+ description: List of VLAN IDs to use for subinterfaces
+ perimeta_vlan_networks:
+ type: comma_delimited_list
+ description: List of Contrail VLAN networks to use for the subinterfaces. The order and number of these must match the VLAN ID list
+
+resources:
+ contrail_vmi_subinterface:
+ type: OS::ContrailV2::VirtualMachineInterface
+ properties:
+ name:
+ str_replace:
+ template: $NAME_$VLAN
+ params:
+ $NAME: { get_param: perimeta_subinterface_name_prefix }
+ $VLAN: { get_param: [ perimeta_vlan_ids, { get_param: perimeta_subinterface_instance_index } ] }
+ virtual_machine_interface_properties:
+ {
+ virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: [ perimeta_vlan_ids, { get_param: perimeta_subinterface_instance_index } ] }
+ }
+ virtual_machine_interface_mac_addresses:
+ {
+ virtual_machine_interface_mac_addresses_mac_address: [{ get_param: perimeta_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: perimeta_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: perimeta_vip_0 },
+ 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: perimeta_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: perimeta_v6_vip_0 },
+ virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
+ }
+ }
+ ]
+ }
+ virtual_network_refs: [{ get_param: [ perimeta_vlan_networks, { get_param: perimeta_subinterface_instance_index } ] }]
+ virtual_machine_interface_refs: [{ get_param: perimeta_parent_interface }]
+
+ contrail_vmi_ip:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ contrail_vmi_subinterface ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: contrail_vmi_subinterface }]
+ virtual_network_refs: [{ get_param: [ perimeta_vlan_networks, { get_param: perimeta_subinterface_instance_index } ] }]
+ instance_ip_address: { get_param: perimeta_ip_0 }
+ instance_ip_family: v4
+
+ contrail_vmi_ipv6:
+ type: OS::ContrailV2::InstanceIp
+ depends_on: [ contrail_vmi_subinterface ]
+ properties:
+ virtual_machine_interface_refs: [{ get_resource: contrail_vmi_subinterface }]
+ virtual_network_refs: [{ get_param: [ perimeta_vlan_networks, { get_param: perimeta_subinterface_instance_index } ] }]
+ instance_ip_address: { get_param: perimeta_v6_ip_0 }
+ instance_ip_family: v6
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/expectedoutputfiles/MainServiceTemplate.yaml
index 6e2aebc9c2..4744837987 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/expectedoutputfiles/MainServiceTemplate.yaml
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/getAttrDynamicParamEmptyMap/expectedoutputfiles/MainServiceTemplate.yaml
@@ -508,152 +508,6 @@ topology_template:
capability: tosca.capabilities.Node
node: NOKIA-LCP-Base
relationship: tosca.relationships.DependsOn
- FORMATXLATE:
- type: org.openecomp.resource.abstract.nodes.heat.LCP-OPENECOMP.template
- directives:
- - substitutable
- properties:
- net_ids:
- ? ''
- : null
- access:
- get_input: access_net_id
- oam:
- get_input: oam_net_id
- flavors:
- ? ''
- : ''
- oam:
- get_input: oam_flavor_name
- ims:
- get_input: ims_flavor_name
- v4_ntp_server:
- get_input: v4_ntp_server
- vnf_name:
- get_input: vnf_name
- vmtype_list:
- - oam
- - ims
- name_lists:
- ? ''
- : [
- ]
- oam:
- get_input: oam_names
- ims:
- get_input: ims_names
- service_template_filter:
- substitute_service_template: LCP-OPENECOMP.templateServiceTemplate.yaml
- vm_counts:
- get_input: vm_counts
- v6_dns_server:
- get_input: v6_dns_server
- v6_ntp_server:
- get_input: v6_ntp_server
- vnf_id:
- get_input: vnf_id
- lcm_keypair:
- get_input: lcm_keypair
- subnet_ids:
- ? ''
- : null
- access:
- get_input: access_subnet_id
- oam:
- get_input: oam_subnet_id
- cidrs:
- ? ''
- : null
- access:
- get_input: access_cidr
- oam:
- get_input: oam_cidr
- default_gateways:
- ? ''
- : null
- access:
- get_input: access_default_gateway
- oam:
- get_input: oam_default_gateway
- net_types:
- get_input: net_types
- ssh_access_key:
- get_input: ssh_access_key
- images:
- ? ''
- : ''
- oam:
- get_input: oam_image_name
- ims:
- get_input: ims_image_name
- v4_enum_server:
- get_input: v4_enum_server
- availability_zones:
- - get_input: availability_zone_0
- - get_input: availability_zone_1
- ip_lists:
- ? ''
- : [
- ]
- ims_access_ips:
- get_input: ims_access_ips
- oam_oam_ips:
- get_input: oam_oam_ips
- vnf_module_id:
- get_input: vnf_module_id
- backup_file:
- get_input: backup_file
- v6_enum_server:
- get_input: v6_enum_server
- default_action:
- get_input: default_action
- v4_dns_server:
- get_input: v4_dns_server
- install_config:
- get_input: install_config
- cloud_name_delimiter:
- get_input: cloud_name_delimiter
- vnf_module_name:
- get_input: vnf_module_name
- vm_info:
- get_input: vm_info
- vmtype_count: 2
- NOKIA-LCP-Base:
- type: org.openecomp.resource.abstract.nodes.heat.LCP-Base.template
- directives:
- - substitutable
- properties:
- default_prefix:
- str_replace:
- template: |
- {"": "$stk$delimiter"}
- params:
- $stk:
- get_input: OS::stack_name
- $delimiter:
- get_attribute:
- - FORMATXLATE
- - usage_info
- - cloud_name_delimiter
- total_vm_pairs:
- get_attribute:
- - FORMATXLATE
- - total_vm_pairs
- service_template_filter:
- substitute_service_template: LCP-Base.templateServiceTemplate.yaml
- ext_net_list:
- - oam
- - access
- int_net_count: 2
- ext_net_info:
- get_attribute:
- - FORMATXLATE
- - ext_net_info
- requirements:
- - dependency:
- capability: tosca.capabilities.Node
- node: FORMATXLATE
- relationship: tosca.relationships.DependsOn
IMS_RRG:
type: org.openecomp.resource.abstract.nodes.heat.LCP-PairGroup.template
directives:
@@ -828,8 +682,6 @@ topology_template:
Example HOT file illustrating elasticity groups.
members:
- OAM_RRG
- - FORMATXLATE
- - NOKIA-LCP-Base
- IMS_RRG
outputs:
oam_management_v4_address:
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java
index d908b2cf74..df2459368e 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/DataModelUtil.java
@@ -698,7 +698,7 @@ public class DataModelUtil {
* @return the metadata
*/
public static Map<String, String> createMetadata(String templateName, String templateVersion,
- String templateAuthor) {
+ String templateAuthor) {
mdcDataDebugMessage.debugEntryMessage(null, null);
@@ -1318,7 +1318,7 @@ public class DataModelUtil {
* @return the relationship template
*/
public static Map<String, RelationshipTemplate> getRelationshipTemplates(ServiceTemplate
- serviceTemplate) {
+ serviceTemplate) {
if (serviceTemplate == null
|| serviceTemplate.getTopology_template() == null
|| serviceTemplate.getTopology_template().getRelationship_templates() == null) {
@@ -1575,4 +1575,9 @@ public class DataModelUtil {
mdcDataDebugMessage.debugExitMessage(null, null);
}
+
+ public static boolean isNodeTemplateSectionMissingFromServiceTemplate(ServiceTemplate serviceTemplate){
+ return Objects.isNull(serviceTemplate.getTopology_template() )
+ || MapUtils.isEmpty(serviceTemplate.getTopology_template().getNode_templates());
+ }
}